Сообщение error фактически приходит с сервера sql.Нельзя объединять два столбца с разным сопоставлением в один.Я бы порекомендовал использовать linq-to-entities
, чтобы выделить их в отдельных свойствах, а затем linq-to-objects
, чтобы создать свойство электронной почты следующим образом:
var result = from i in _dbContext.Users
orderby i.aspnet_User.aspnet_Membership.CreateDate
select new
{
UserID = i.ID,
Company = i.Company,
FirstName = i.FirstName,
LastName = i.LastName,
IsUsed = i.IsUsed,
Title = i.Title,
AspEmail = i.aspnet_User.aspnet_Membership.Email,
PreRegEmail = i.PreRegEmail.Email,
};
var q = from i in result.AsEnumerable()
select new ITW2012Mobile.Models.BusinessLogic.PreReg()
{
UserID = i.ID,
Company = i.Company,
FirstName = i.FirstName,
LastName = i.LastName,
IsUsed = i.IsUsed,
Title = i.Title,
Email = i.IsUsed ? i.AspEmail : i.PreRegEmail,
};
var final = q.ToList();