7

プロパティを持つソース タイプと、まったく同じプロパティを持つ宛先タイプがあります。

次のような AutoMapper の単純なマッピングを 1 つ構成した後:

Mapper.CreateMap<MySourceType, MyDestinationType>();

MySourceType パラメーターを持つ MyDestinationType のコンストラクターが必要であり、作成中のタイプのプロパティを次のようなソースで自動的に初期化します。

public MyDestinationType(MySourceType source)
{
    // Now here I am do not know what to write.
}

私が見つけた唯一の回避策は、静的ファクトリメソッドを作成することです

public static MyDestinationType Create(MySourceType source)
{
     return Mapper.Map<MyDestinationType>(source);
}

この静的な醜さを持たない方法はありますか?

4

2 に答える 2

9

個人的には醜いと思いますが、できることは次のとおりです。

public MyDestinationType(MySourceType source)
{
    Mapper.Map<MySourceType, MyDestinationType>(source, this);
}
于 2015-04-23T13:44:13.307 に答える