我有这样的事情如何自动映射这个(映射子成员)
public class ProductViewModel
{
public int SelectedProductId { get; set; }
public string ProductName {get; set;}
public int Qty {get; set;}
public List<SelectListItem> Products { get; set};
}
我有这样
public class Product
{
public int ProductId {get; set;}
public string ProductName {get; set;}
public int Qty {get; set;}
}
public class Store
{
public Product() {get; set;}
}
域现在我需要做的映射。
//在我的控制器
var result = Mapper.Map<ProductViewModel, Store>(Product);
,因为它无法弄清楚如何把产品编号中,因为它 是
Store.Product.ProductId;
我的地图是这样不会绑定什么这
Mapper.CreateMap<ProductViewModel, Store>().ForMember(dest => dest.Product.ProductId, opt => opt.MapFrom(src => src.SelectedProductId));
我得到这个错误
表达式'dest => 转换(dest.Product.SelectedProductId'必须 解析为顶级成员。参数 name:lambda表达式
我不确定如何做到这一点。
你能修复你的代码吗?那里有很多错误。例如,'public class MyTest()'不是一个有效的类声明,'public MyTest(){get; set;}'不是有效的属性声明。 –
您是否有意将您的视图模型映射回您的域类?这不是automappers人员推荐的。 –
@Brian - Ya。为什么不?我的意思是我认为这是自动映射器的重点。否则,我必须手工制作所有的东西,否则就会破坏自动制图仪的目的。那么我也可以只是手动地图域来查看模型。 – chobo2