ホームページ >バックエンド開発 >C++ >AutoMapper マッピング中にプロパティを無視するにはどうすればよいですか?

AutoMapper マッピング中にプロパティを無視するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-27 09:46:11615ブラウズ

How to Ignore Properties During AutoMapper Mappings?

Automapper マッピングのプロパティの無視

Automapper を使用する場合、ソース オブジェクトと宛先オブジェクト間のマッピングから特定のプロパティを除外することが必要になる場合があります。これは、宛先オブジェクトに、ソースからのマッピングに適さない読み取り専用または計算されたプロパティが含まれている場合に発生する可能性があります。

そのようなシナリオの 1 つは、ソース オブジェクト (OrderModel など) にプロパティ (ProductName) がある場合です。それは宛先オブジェクト (例: Orders) には存在しません。次のマッピングを実行しようとすると、

Mapper.CreateMap<OrderModel, Orders>();

ProductName プロパティがマップされていないことを示す例外が発生します。

Automapper が ProductName プロパティをマップしようとしないようにするには、Ignore( ) メソッド:

CreateMap<OrderModel, Orders>().ForMember(x => x.ProductName, opt => opt.Ignore());

または、AutoMapper 8.0 以降のバージョンでは、 Ignore() メソッドは DoNotValidate() に置き換えられました:

CreateMap<OrderModel, Orders>().ForMember(x => x.ProductName, opt => opt.DoNotValidate());

Ignore() または DoNotValidate() オプションを指定すると、Automapper はマッピング プロセスから ProductName プロパティを除外し、例外を解決し、マッピングを正常に続行するには。

以上がAutoMapper マッピング中にプロパティを無視するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。