これを使用してDynamicMap()を使用し、nullソース値アプローチを無視して、マッパーにソース上のNULL値を持つプロパティを無視させるようにしていますが、これはバージョン2.1.267.0(現在)では機能しないようです。
これが私のマッピング設定です:
Mapper.CreateMap<PersonDTO, Person>().ForAllMembers(
opt => opt.Condition(srs => !srs.IsSourceValueNull));
これが私のテストです:
// Arrange
var Person = new Person { FirstName = "Bruce", Surname = "Lee"};
var PersonDto = new PersonDTO { FirstName = "Jet", Surname = null };
// Act
Mapper.Map(PersonDto, Person);
// Assert
Assert.AreEqual("Jet", Person.FirstName); // Assert.AreEqual failed. Expected:<Jet>. Actual:<Bruce>.
Assert.AreEqual("Lee", Person.Surname, "Surname field with NULL value should not have been mapped");
それはあなたのために働きますか?もしそうなら、私のコードで問題を見つけることができますか?