3

ドメイン オブジェクトに、次のような一連のオブジェクトを含めることができるとします。

List<Thing> Things

Thing は次のように定義されます。

class Thing
(
    public int ThingId { get; set; }
    public string ThingName { get; set; }
)

私のDTOには含まれています

List<string> ThingIds;
List<string> ThingNames;

問題は、オートマッパーを使用してモノを DTO の「関連ビット」にマップするにはどうすればよいかということです。

ありがとう。

キリスト教徒

4

1 に答える 1

1

カスタムリゾルバーを書くことで、私は推測します。

ID と名前の間のバインディングを失うというのは、非常に珍しい要件です。


私はあなたが正しいと思います。申し訳ありませんが、dto/viewmodel マッピングについてはまだ学習中です。Thing の dto を作成する意味があまりないため、DTO 内にドメイン オブジェクトを配置することは許容できると思いますか?

ビュー モデル内にドメイン モデルを混在させないでください。あなたは来週それを後悔するでしょう(私は確かにそうしました...)。

class Thing {
    public int ThingId { get; set; }
    public string ThingName { get; set; }
    public string UnnecessaryProp {get;set;}
}

class ThingViewModel {
    public int ThingId { get; set; }
    public string ThingName { get; set; }
}

class MyView {
    public IEnumerable<ThingViewModel> Things {get;set;}
}

ここでは、ビューモデルについてさらにいくつかの考えを見つけることができます。

于 2010-03-15T13:30:14.930 に答える