LINQ и как возвратить список определенного типа

У меня есть 2 таблицы (Документ и DocumentClass), которые имеют следующие столбцы:

DocumentClass: DocClassID, имя, ParentID

Документ: DocID, имя, DocClassID

DocumentClass таблица содержит родительские и дочерние записи и отношения между родителем, и дочерний элемент является столбцом ParentID. A Document запись связана с дочерней записью в DocumentClass внешним ключом DocClassID.

Родительские записи в DocumentClass имейте ParentID = 0 и Дочерние записи в DocumentClass имейте ParentID! = 0

Я хочу получить Имя childs и что Родительское Имя ребенка от DocumentClass таблица.

Мне удалось создать функцию, которая делает это для меня. Я отправляю в списке идентификаторов Документа, нахожу их DocumentClass записи (дочерние записи), что документ связан с и затем находит родителя к тем дочерним записям. Затем я поместил ту информацию, которую я хочу в Дочерний класс.

public List<Child> GetDocClassInfo(List<int> docIds)
{
var result = from dc in _context.DocClasses
             from d in _context.Documents
             where dc.DocClassID == d.DocClassID
             where dc.DocClassID != 0
             where docIds.Contains(d.DocID)
             select new 
             {
                 children = from p in _context.DocClasses
                            where dc.ParentID == p.DocClassID
                            select new Child
                            {
                                ChildId = dc.DocClassID,
                                ChildDocClassName = dc.DocClassName,
                                ParentId = p.DocClassID,
                                ParentDocClassName = p.DocClassName
                            }
             };

        return result.ToList();
    }

Моя проблема состоит в том, что я хочу иметь Список для возврата из функции, но компилятору не нравится это вообще. Я получаю ошибку при высказывании этого

Не может неявно преобразовать тип System.Collections.Generic.List``<AnonymousType#1> кому: System.Collection.Generic.List<Child>.

Как я могу записать, что LINQ запрашивают для возврата Списка?

С уважением,

OKB

5
задан abatishchev 13 August 2010 в 07:03
поделиться