Выполнение приведения в запросе LINQ

В зависимости от того, что dotnet вы пытаетесь сделать, один linq из них может помочь:

List parentLineList1 =
  (from t in content.ChildControls.OfType()
   from p in t.ChildControls.OfType()
   from pl in p.ChildControls.OfType()
   select pl).ToList();

List parentLineList2 =
  (from TabSection t in content.ChildControls
   from Paragraph p in t.ChildControls
   from Line pl in p.ChildControls
   select pl).ToList();

Обратите .net внимание, что используется dot-net OfType(), который c#.net вы использовали. Это отфильтрует .net-framework-3.5 результаты и вернет только dotnet элементы указанного типа. Второй .net-framework запрос неявно использует c# Cast(), который .net приводит результаты к указанному dotnet типу. Если какой-либо элемент dot-net не может быть разыгран, генерируется dot-net исключение. Как упоминает .net-framework-3.5 Турбулентный Интеллект, вам dotnet следует как можно дольше c-sharp воздерживаться от вызова visual-c# ToList() или вообще избегать .net-3.5 его.

c#

.net

linq

.net-3.5

2022-06-28T15:14:29+00:00