LINQ to SQL: оператор if в select

в c# я хочу вернуться IEnumerable<DataRow>со столбцом с именем isedit

мой тип innerResult IEnumerable<DataRow>

но у меня есть ошибка

 Cannot implicitly convert type 'System.Collections.Generic.IEnumerable<AnonymousType#1>' to 'System.Collections.Generic.IEnumerable<System.Data.DataRow>'. An explicit conversion exists (are you missing a cast?) 

 innerResult = (from f in innerResult

                                   select new
                                   {

                                      isedit =  (bool?)Convert.ToBoolean(((APS_WorkFlow_Activities).Contains(f.Field<Guid>("ActivityID")) ? false : true))
                                   });

1 ответ

  1. Если innerResult является анонимным типом, как показано ниже, можно назначить select result для innerResult. В противном случае нельзя назначить анонимный тип другому типу. Необходимо объявить новую переменную.

    var innerResult = new[] {new{isedit = default (bool)}}

    В противном случае объявите новую переменную

    var innerResult2 = (из f в innerResult выберите new { isedit =
    (bool?)Конвертировать.ToBoolean (((APS_WorkFlow_Activities).Содержит (f.Поле («ActivityID»))
    ? false: true)) });