Как я могу получить первое значение из этой коллекции, используя Linq to Entities? - PullRequest
2 голосов
/ 06 декабря 2011

У меня есть следующий код. Foreach в конце не нужен, потому что будет возвращена только одна строка.

Так как мне получить значение из группы пользователей без необходимости зацикливания?

Спасибо Kevin

using (kdEntities db = new kdEntities())
        {
            Label lbl = sender as Label;
            IQueryable<UserGroup> userGroups = from UserGroup in db.UserGroups where UserGroup.UgpID == 1 select UserGroup;

            foreach (var group in userGroups)
            {
                lbl.Text = group.UgpDescription;
            }
        }

Ответы [ 2 ]

8 голосов
/ 06 декабря 2011
userGroups.FirstOrDefault();  

должен сделать трюк

2 голосов
/ 06 декабря 2011

У вас есть два варианта:

Используйте userGroups.FirstOrDefault();, если может быть несколько значений, и вас интересует только Первое

Используйте userGroups.SingleOrDefault();, если должно быть только одно значение,Если имеется несколько значений, будет выдано исключение.

Часть OrDefault также является необязательной.Это вернет значение по умолчанию (в вашем случае null), если нет значения.Если вы пропустите OrDefault, а коллекция пуста, будет выдано исключение.

...