- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我有一个带有属性的模型:
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
我应该怎么做才能让它发挥作用?
最佳答案
您是否考虑过自动映射到一个简单数组,然后使用 Get-only 属性将其包装为一个 SelectList,而不是自动映射到 SelectList?
This answer描述了该方法。
此外,在同一个 SO 问题中,还有 ConstructedBy想法,以及使用 MapFrom
直接执行此操作的方法。
关于c# - 如果字段类型没有默认构造函数,如何使用 ValueResolver?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14084594/
我正在努力处理将值传递给自定义 ValueResolver 的格式。我基本上是在尝试根据我的 ViewModel 将 Int 转换为 Object。但是,我无法让它将值传递给我的 ValueResol
我在使用 AutoMapper 4.2,但我无法弄清楚为什么会出现此错误 Autofac.Core.Registration.ComponentNotRegisteredException The r
我有一个带有属性的模型: public class MyModel{ public SelectList PropertyTypeList { get; set; } } 我有 Valu
我当前的代码正在运行: map.ForMember(x => x.Address, m => m.ResolveUsing(l => { var engine = new MappingEng
假设我有自定义 ValueResolver public class AssessmentAttendiesResolver : ValueResolver, ICollection> { p
我正在尝试对自定义 ValueResolver (Automapper) 进行单元测试,但遇到了问题,因为它强制我覆盖的方法没有直接暴露在我们必须创建的自定义对象中。我覆盖了 protected 方法
我有以下自定义值解析器: public class ImageUrlResolver : ValueResolver { private readonly ISettings _setting
它看起来像一个 IValueFormatter采用 object 类型的值并返回 string 类型的值, 而一个 ValueResolver接受任何类型的值并返回任何类型的值。所以,它更灵活。还有一
我正在使用 automapper 库将我的 Model 转换为我的 ViewModel。对于每个模型,我创建配置文件,在其中使用CreateMap添加我的 map 。 我想使用自定义的ValueRes
不确定标题是否有意义,但这就是我正在做的。我正在使用 AutoMapper 将我的 Entity Framework 实体映射到我的 DTO 对象,反之亦然。当我尝试将 DTO 数据映射到 EF 实体
我是一名优秀的程序员,十分优秀!