用linq以升序顺序以升级顺序中的订单值



我正在尝试按升序顺序显示'tblitems'表的itemName值。即使我使用上升,也不是顺序。我的主要问题是,我在这里无法理解代码,因为它已经开发了系统。

 public tblItem GetItemByID(int itemID)
        {
            try
            {
                var itm = from u in DB.tblItems
                          where u.ItemID == itemID
                          orderby u.ItemName ascending
                          select u;
                return itm.Single<tblItem>();
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }

请有人帮助我逐行理解此代码。

特别听不懂这条线

返回itm.single();

var itm = from u in DB.tblItems
where u.ItemID == itemID
orderby u.ItemName ascending
select u;

这描述了从db表Tblitems,其中ItemId=itemid和按ItemName按升序顺序排序。订购后,它将返回您将选择的列表。始终返回列表。但是根据您的代码,它将返回匹配的项目并返回该匹配项目的列表。

所以,下一行return itm.Single();返回列表中存在的单个项目。

最新更新