以下のようなlinQクエリがあります
var records = (from P in Person
join B in BankAccount
on P.ID equals B.PersonID
select new { P, B}).ToList();
個人テーブルには多くのフィールドがありますが、IDと名前のみを操作する必要があります。同様に、BankAccountの場合、ID、AccountType、およびAccountBalanceのみを操作する必要があります。
次に、上記のようなレコード変数タイプを、次のようなメソッドを使用して別のマッパークラスに渡します。
public List<CompositeDTO> MapToDto(IEnumerable<object> data)
{
foreach (var rec in data)
{
dto.InjectFrom(rec );
dtoList.Add(dto);
}
return dtoList;
}
CompositeDTOは以下のとおりです
public class CompositeDTO
{
public int PersonID {get; set;}
public String PersonName {get; set;}
public int AccountID {get; set;}
public String AccountType{get; set;}
public int AccountBalance{get; set;}
}
CompositeDTO
問題は、を使用してタイプのオブジェクトに値を取得できないことです。dto.InjectFrom(rec )
これはどのように行う必要がありますか?ここのドキュメントは、2つの異なるソースクラスからの1つのフィールドに対してそれを行う方法のみを説明しました。私は何かを逃したことがありますか?これはできますか?