Вопросы с тегом «linq»

Language Integrated Query (LINQ) - это компонент Microsoft .NET Framework, который добавляет собственные возможности запроса данных в языки .NET. При необходимости рассмотрите возможность использования более подробных тегов, например [linq-to-sql], [linq-to-entity] / [entity-framework] или [plinq]

4
Func <T> без параметра
Могу ли я передать метод с параметром out как Func? public IList&lt;Foo&gt; FindForBar(string bar, out int count) { } // somewhere else public IList&lt;T&gt; Find(Func&lt;string, int, List&lt;T&gt;&gt; listFunction) { } Для Func нужен тип, поэтому out не будет компилироваться, а для вызова listFunction требуется int и не будет разрешен вход. …
167 c#  .net  linq  generics  func 

5
LINQ - левое соединение, группировка и подсчет
Допустим, у меня есть этот SQL: SELECT p.ParentId, COUNT(c.ChildId) FROM ParentTable p LEFT OUTER JOIN ChildTable c ON p.ParentId = c.ChildParentId GROUP BY p.ParentId Как я могу перевести это в LINQ to SQL? Я застрял в COUNT (c.ChildId), сгенерированный SQL всегда, кажется, выводит COUNT (*). Вот что я получил так …
166 c#  .net  linq  linq-to-sql 

6
Разница между Lookup () и словарём (Of list ())
Я пытаюсь обернуть голову, какие структуры данных являются наиболее эффективными и когда и где использовать какие. Возможно, я просто недостаточно хорошо понимаю структуры, но как это ILookup(of key, ...)отличается от Dictionary(of key, list(of ...))? Кроме того, где я хотел бы использовать ILookupи где это было бы более эффективно с точки …
165 c#  .net  vb.net  linq 

6
Невозможно создать постоянное значение типа. В этом контексте поддерживаются только примитивные типы или типы перечисления.
Я получаю эту ошибку по запросу ниже Невозможно создать постоянное значение типа API.Models.PersonProtocol. В этом контексте поддерживаются только примитивные типы или типы перечисления ppCombinedниже находится IEnumerableобъект PersonProtocolType, который состоит из двух PersonProtocolсписков. Почему это не удается? Разве мы не можем использовать JOINпредложение LINQ внутри SELECTa JOIN? var persons = db.Favorites …

11
Конвертировать список в словарь, используя linq и не заботясь о дубликатах
У меня есть список объектов Person. Я хочу преобразовать в словарь, где ключ - это имя и фамилия (объединенные), а значение - объект Person. Проблема в том, что у меня есть несколько дублированных людей, поэтому это взрывается, если я использую этот код: private Dictionary&lt;string, Person&gt; _people = new Dictionary&lt;string, Person&gt;(); …
163 c#  linq  dictionary 

8
Создать список из двух списков объектов с помощью linq
У меня следующая ситуация class Person { string Name; int Value; int Change; } List&lt;Person&gt; list1; List&lt;Person&gt; list2; Мне нужно объединить 2 списка в новый List&lt;Person&gt; на тот случай, если это будет тот же человек, у которого объединенная запись будет иметь это имя, значение человека в list2, изменение будет значением …
161 c#  linq 

4
LINQ Group By в объект словаря
Я пытаюсь использовать LINQ для создания Dictionary&lt;string, List&lt;CustomObject&gt;&gt;из List&lt;CustomObject&gt;. Я могу заставить это работать, используя "var", но я не хочу использовать анонимные типы. Вот что у меня var x = (from CustomObject o in ListOfCustomObjects group o by o.PropertyName into t select t.ToList()); Я также Cast&lt;&gt;()однажды попробовал использовать библиотеку LINQ …
161 linq  dictionary 

7
Find () и Where (). FirstOrDefault ()
Я часто вижу людей, использующих Where.FirstOrDefault()для поиска и захватить первый элемент. Почему бы просто не использовать Find()? Есть ли преимущество перед другим? Я не мог сказать разницу. namespace LinqFindVsWhere { class Program { static void Main(string[] args) { List&lt;string&gt; list = new List&lt;string&gt;(); list.AddRange(new string[] { "item1", "item2", "item3", "item4" …
161 c#  linq  linq-to-objects 

5
Как работает следующий оператор LINQ?
Как работает следующий оператор LINQ ? Вот мой код: var list = new List&lt;int&gt;{1,2,4,5,6}; var even = list.Where(m =&gt; m%2 == 0); list.Add(8); foreach (var i in even) { Console.WriteLine(i); } Вывод: 2, 4, 6, 8 Почему нет 2, 4, 6?
160 c#  .net  linq 

6
Linq to Sql: несколько левых внешних соединений
У меня возникли проблемы с выяснением, как использовать более одного левого внешнего соединения с использованием LINQ to SQL. Я понимаю, как использовать одно левое внешнее соединение. Я использую VB.NET. Ниже мой синтаксис SQL. T-SQL SELECT o.OrderNumber, v.VendorName, s.StatusName FROM Orders o LEFT OUTER JOIN Vendors v ON v.Id = o.VendorId …

5
Какой смысл в Lookup <TKey, TElement>?
MSDN объясняет поиск следующим образом: А Lookup&lt;TKey, TElement&gt; напоминает Dictionary&lt;TKey, TValue&gt;. Разница в том, что Dictionary &lt;TKey, TValue&gt; отображает ключи на отдельные значения, тогда как Lookup &lt;TKey, TElement&gt; отображает ключи на коллекции значений. Я не считаю это объяснение особенно полезным. Для чего используется Lookup?
155 c#  .net  linq  lookup 

22
Как проверить, является ли IEnumerable нулевым или пустым?
Я люблю string.IsNullOrEmptyметод. Я хотел бы иметь что-то, что позволило бы такую ​​же функциональность для IEnumerable. Есть ли такие? Может быть, какой-нибудь вспомогательный класс коллекции? Причина, по которой я спрашиваю, состоит в ifтом, что в операторах код выглядит загроможденным, если шаблон имеет значение (mylist != null &amp;&amp; mylist.Any()). Было бы …

5
EF LINQ включает в себя несколько и вложенные объекты
Хорошо, у меня есть трехуровневые объекты со следующей иерархией: Курс -&gt; Модуль -&gt; Глава Вот оригинальное заявление EF LINQ: Course course = db.Courses .Include(i =&gt; i.Modules.Select(s =&gt; s.Chapters)) .Single(x =&gt; x.Id == id); Теперь я хочу включить другую сущность под названием Lab, которая связана с курсом. Как включить объект «Лаборатория»? …

5
String.IsNullOrWhiteSpace в выражении LINQ
У меня есть следующий код: return this.ObjectContext.BranchCostDetails.Where( b =&gt; b.TarrifId == tariffId &amp;&amp; b.Diameter == diameter || (b.TarrifId==tariffId &amp;&amp; !string.IsNullOrWhiteSpace(b.Diameter)) || (!b.TarrifId.HasValue) &amp;&amp; b.Diameter==diameter); И я получаю эту ошибку при попытке запустить код: LINQ to Entities не распознает метод метода Boolean IsNullOrWhiteSpace (System.String), и этот метод нельзя преобразовать в выражение …

7
В чем разница между IQueryable и IEnumerable
Я смущен относительно разницы. Будучи довольно новым для .Net, я знаю, что могу делать запросы, IEnumerablesиспользуя расширения Linq. Так что же это такое IQueryableи чем оно отличается? Смотрите также В чем разница между IQueryable [T] и IEnumerable [T]? что совпадает с этим вопросом.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.