在哪里我应该添加属性,主要是在视图中使用,在实体对象或包装类
本文关键字:实体 对象 包装类 视图 我应该 属性 在哪里 添加 | 更新日期: 2023-09-27 18:16:41
Product Entity
对象被传递给View。我想添加一些只涉及视图的属性,比如
public string MiddleImage
{
get
{
return "M" + this.ImageUrl;
}
}
现在我可以在视图
中使用这个属性了<img src="<%=Model.MiddleImage%>" />
我的问题是我应该在哪里添加这个属性,在产品实体对象本身,或者最好创建另一个类,从Product
继承?
public class ProductWrapper : Product
{
public string MiddleImage
{
get
{
return "M" + this.ImageUrl;
}
}
}
我会创建一个ProductViewModel
类,它持有只有你的视图关心的属性,当然可以包括任何新形成的UI属性,如你的图像url。
然后节省一些体力劳动,在控制器中使用AutoMapper将这些属性从实体映射到视图模型。
在映射后分配视图模型的自定义属性。
您的Product
实体映射到您的持久性存储,您的ProductViewModel
映射到您的用户界面-正是MVC试图实现的关注点分离。