日期:2014-05-17  浏览次数:21016 次

求教一个查询数据的方法。
我现在有一个查询数据的函数,返回的是一个List集合,查询多条的话用的是foreach。后来想想,这样性能很低,能不能直接在数据库中将所有数据全部查出来。
这是我现在的代码:

public static List<CardListModel> UpdateCardStateAndPermitList(List<CardListModel> cardList, int cardState)
        {
            List<CardListModel> resultList = new List<CardListModel>();
            foreach (CardListModel item in cardList)
            {
                int result = UpdateCardStateAndPermit(item.CardData, cardState);
                if (result < 1)
                {
                    resultList.Add(item);
                }
            }
            return resultList;
        }


private static int UpdateCardStateAndPermit(int CardData, int CardState)
        {
            //string strSQL = "UPDATE CARDLIST SET CARDSTATE=@CARDSTATE WHERE CARDID=@CARDID";
            SqlParameter[] spr = {
                                    new SqlParameter("@CARDSTATE",CardState),
                                    new SqlParameter("@CARDDATA",CardData),
                                    new SqlParameter("@ReturnValue",SqlDbType.Int)
                                 };