У меня есть ссылка на службу WCF, и по какой-то причине она генерирует внутренне некоторые дополнительные свойства для примитивных типов, например, если есть свойство с именем.
public int id { get; set }
сгенерирует дополнительный, называемый:
public bool idSpecified { get; set; }
Таким образом, автоматически сгенерированные свойства всегда имеют тип bool и заканчиваются указанным суффиксом. Я хотел применить глобальную конфигурацию, чтобы исключить эти свойства, поэтому, когда у меня есть код, подобный этому:
var requestTemp = Mapper.Map<RegisterAccountRequestDto, RegisterAccountRequest>(request);
не потерпит неудачу, если я назову это Mapper.AssertConfigurationIsValid();
Я знаю, что могу сделать что-то вроде этого:
var requestTemp = Mapper.Map<RegisterAccountRequestDto, RegisterAccountRequest>(request, opt => opt.ConfigureMap(MemberList.None));
вообще не проверять модель DTO
или Request
, но я этого не хочу, потому что хочу, чтобы мой тест не прошел, если другая команда обновила службы или я добавил новые свойства в DTO
и не забудьте правильно сопоставить модель Request
.
Я знаю, что могу игнорировать одного за другим, но, поскольку их множество, это не стоит того, и в дальнейшем они могут измениться в будущем.
Есть идеи, как я могу игнорировать эти свойства в общем виде?