Как бы я добавил в модель представления свойства, которые не являются частью моей модели с использованием automapper? - PullRequest
0 голосов
/ 12 августа 2011

Я не уверен, возможно ли это, но вот моя ситуация.

Скажем, у меня есть такая модель:

public class Product
{
    public int Id { get; set; }
    public string Name { get; set; }
}

Моя модель View выглядит следующим образом:

public class ProductModel
{
    public int Id { get; set; }
    public string Name { get; set; }
    public string CustomViewProperty { get; set; }
}

Я использую свою ProductModel для отправки обратно в форму, и мне все равно, нужно ли мне свойство Custom View.Это отображение отлично работает, когда autopper отбрасывает неизвестные свойства.

Я хотел бы сопоставить свои пользовательские свойства только в одном направлении.то есть

Mapper.CreateMap<Product, ProductModel>()
      .ForMember(dest => dest.CustomViewProperty //???This is where I am stuck

То, что в конечном итоге происходит, когда я называю "ToModel", autopper сбрасывает мои неизвестные свойства, и ничто не передается по проводу.1018 * Возможно ли это?Спасибо.

1 Ответ

1 голос
/ 12 августа 2011

Вы должны игнорировать несопоставленные свойства:

Mapper.CreateMap<Product, ProductModel>()
  .ForMember(dest => dest.CustomViewProperty, opt=>opt.Ignore());

или нанесите на карту их:

Mapper.CreateMap<Product, ProductModel>()
  .ForMember(dest => dest.CustomViewProperty, opt=>opt.MapFrom(product=>"Hello world"));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...