ホームページ >バックエンド開発 >C++ >C# で AutoMapper を使用するときにマップされていないプロパティを無視するにはどうすればよいですか?

C# で AutoMapper を使用するときにマップされていないプロパティを無視するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-28 01:36:121046ブラウズ

How Can I Ignore Unmapped Properties When Using AutoMapper in C#?

Automapper によるマッピングの問題の克服: マップされていないプロパティの無視

Automapper は、C# でオブジェクトを効率的にマッピングするために広く使用されているライブラリです。特定のシナリオでは、ソース オブジェクトと宛先オブジェクトの間のプロパティの不一致により例外が発生する可能性があります。たとえば、ソース オブジェクトに宛先オブジェクトに存在しないプロパティが含まれている場合、Automapper はエラーを生成する可能性があります。

Automapper によるプロパティ マッピングの回避

回避するにはAutomapper が特定のプロパティをマッピングする場合は、Ignore() メソッドを使用します。このメソッドを使用すると、開発者はマッピング プロセス中に特定のプロパティを無視するように Automapper に明示的に指示できます。提供されたクエリに示されているケースを考えてみましょう。

解決策:

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

この行をマッピング構成に追加すると、Automapper は、マッピング プロセス中の OrderModel クラス。ソース オブジェクトと宛先オブジェクトの両方に存在するプロパティのみをマッピングすることに重点を置きます。

AutoMapper の更新

Ignore メソッドが置き換えられたことに注目してください。 AutoMapper の新しいバージョンでは DoNotValidate を使用します。したがって、更新されたコードは次のようになります。

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

この調整を利用することで、Automapper は指定されたプロパティのマッピングを効果的に無視し、シームレスで正確なマッピング エクスペリエンスを提供します。

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

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