Я работаю с EF 4.1, у меня есть хранимая процедура в моей базе данных, и я сопоставляю ее с моделью EF и добавляю функцию import
Мне нужно сделать что-то подобное:
MyDataContext db= new MyDataContext();
var x = from all in db.Allergies
select new MyAllergy
{
Name = all.Name,
Id = all.Id,
user = db.GetUser(all.ChangeInfo.CreatedBy).FirstOrDefault()
};
но это исключение выдает:
LINQ to Entities не распознает метод метода 'System.Data.Objects.ObjectResult 1[System.String]
GetUser(System.Nullable
1 [System.Int64])', и этометод не может быть преобразован в выражение хранилища.
Хотя это прекрасно работает: var user = db.GetUser(1).FirstOrDefault()
Редактировать:
public class MyAllergy
{
public int Id { get; set; }
public string Name { get; set; }
public string User { get; set; }
}
public class Allergy
{
public int Id { get; set; }
public string Name { get; set; }
public ChangeInfo ChangeInfo { get; set; }
}
public class ChangeInfo
{
public long CreatedBy { get; set; }
}