Итак, у меня есть следующий код:
return from a in DBContext.Acts
join artist in DBContext.Artists on a.ArtistID equals artist.ID into art
from artist in art.DefaultIfEmpty()
select new Shared.DO.Act
{
ID = a.ID,
Name = a.Name,
Artist = new Shared.DO.Artist
{
ID = artist.ID,
Name = artist.Name
},
GigId = a.GigID
};
Это загружает объект действия и адаптирует его из объекта linq к моему объекту действия домена.
Как вы видите, я определил внешнее соединение художника, чтобы действовать в отношениях.
Я сделал это, потому что я всегда хочу акт, независимо от того, есть ли у него художник.
Это действительно хорошо работает, если в акте действительно есть художник.
Если это не так, код умирает. Это виновник:
Artist = new Shared.DO.Artist
{
ID = artist.ID,
Name = artist.Name
},
Если я уберу его, это нормально. Можно ли сделать то, что я пытаюсь?