Использование SQL-запросов в EFC#

Место общения программистов C#
Anonymous
Использование SQL-запросов в EF

Сообщение Anonymous »

Я получаю данные из базы данных следующим образом:

Код: Выделить всё

 result = (from d in context.FTDocuments
join f in context.FTDocFlags on d.ID equals f.DocID into fgrp
from x in fgrp.DefaultIfEmpty()
where d.LevelID == levelID && x.UserID == userID && d.Status.Equals(DocumentStatus.NEW)
select new Entities.Document
{
ArrivalDate = d.ArrivalDate.Value,
BundleReference = d.BundleRef,
CreatedDate = d.CreatedDate,
CustomerID = d.CustomerID,
DocType = d.DocType.Value,
GuidID = d.DocGuid,
ID = d.ID,
LastExportID = d.LastExpID,
LevelID = d.LevelID,
ProfileID = d.ProfileID,
ScanDate = d.ScanDate.Value,
ScanOperator = d.ScanOperator,
SenderEmail = d.SenderEmail,
Status = d.Status,
VerifyOperator = d.VerOperator,
FlagNo = x == null ? 0 : x.FlagNo,
FlagUserID = x == null ? 0 : x.UserID
}).ToList();
Теперь я пытаюсь добиться этого с помощью SQL-запросов:

Код: Выделить всё

var test = context.Database.SqlQuery("select *from FTDocument d left outer join FTDocFlag f on d.ID=f.DocID").ToList();
Но возникает следующая ошибка:


В средстве чтения данных имеется более одного поле. Несколько полей недопустимы для примитивных или перечисляемых типов EDM


Можно ли использовать сложные запросы, как указано выше?

Я использую EF 6.0.

Подробнее здесь: https://stackoverflow.com/questions/501 ... ries-in-ef

Вернуться в «C#»