5

私はプロパティを持つモデルを持っています:

public class MyModel{
       public SelectList PropertyTypeList { get; set; }
}

そして、私はValueResolverを持っています

public class MyPropertyValueResolver : ValueResolver<ProductProperty, SelectList>
{
    protected override SelectList ResolveCore(ProductProperty source)
    {
        myList = .......;
        return new SelectList(myList, "Value", "Text");
    }
}

次に、マッピングを構成します

    Mapper.CreateMap<Source, Destination>()
          .ForMember(s => s.PropertyTypeList, opt => opt.ResolveUsing<MyPropertyValueResolver>());

しかし、それは私に言う

Type 'System.Web.Mvc.SelectList' does not have a default constructor 

それを機能させるにはどうすればよいですか?

4

1 に答える 1

3

SelectListに自動マッピングするのではなく、単純な配列に自動マッピングしてから、Get-onlyプロパティを使用してこれをSelectListとしてラップすることを検討しましたか?

この回答はアプローチを説明しています。

また、同じSOの質問から、ConstructedByのアイデアと、MapFromこれを直接行うために使用する方法があります。

于 2012-12-29T18:37:14.740 に答える