В моем проекте ASP.NET MVC 2 (RC) - я использую AutoMapper для сопоставления между классом Linq и Sql (Media) и моделью представления (MediaVM). Модель представления имеет свойство SelectList для раскрывающегося списка в представлении. У меня есть пользовательский преобразователь значений для заполнения элементов свойства SelectList из БД, но мне интересно, есть ли способ передать пару значений из исходной модели в преобразователь (с помощью метода ConstructedBy?) В ) отфильтровать элементы из БД. Исходный объект передается в пользовательский распознаватель, но распознаватель используется в нескольких разных моделях представления с разными типами исходных объектов, поэтому лучше определить, где получить значения в моей конфигурации сопоставления. Вот мой вид модели:
public class MediaVM
{
public bool Active { get; set; }
public string Name { get; set; }
[UIHint("DropDownList")]
[DisplayName("Users")]
public SelectList slUsers { get; private set; }
}
Конфигурация отображения автомпера:
Mapper.CreateMap<Media, MediaVM>()
.ForMember(dest => dest.slUsers, opt => opt.ResolveUsing<UsersSelectListResolver>());
Было бы неплохо сделать что-то подобное в предложении отображения .ForMember:
.ConstructedBy(src => new UsersSelectListResolver(src.UserID, src.FilterVal))
Есть ли способ сделать это?