だから私は次のコードを持っています:
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
};
これはactオブジェクトをロードし、それをlinqオブジェクトから私のドメインactオブジェクトに適応させます。
ご覧のとおり、artist と act の関係に外部結合を定義しました。
アーティストがいるかどうかに関係なく、常にその行為が欲しいので、私はこれを行いました.
行為に実際にアーティストがいる場合、これは非常にうまく機能します。
そうでない場合、コードは死にます。これが犯人です:
Artist = new Shared.DO.Artist
{
ID = artist.ID,
Name = artist.Name
},
取り除けば大丈夫です。私が試みていることを行うことは可能ですか?