【发布时间】:2011-12-14 14:34:30
【问题描述】:
最近我开始使用带有自动映射器的视图模型。 问题立即出现。例如,我有这样的课程:
public class Zone
{
public int ZoneId;
public string Title;
public int BannersCount;
}
public class ZoneView
{
public int ZoneId
{
get;
set;
}
public string Title;
{
get;
set;
}
[Required(ErrorMessage = "Поле Кол-во баннеров является обязательным.")]
[Display(Name = "Кол-во баннеров*")]
public int BannersCount
{
get;
set;
}
}
我不想在我的视图中编辑标题。所以我不在 TextEditor 中显示标题,而是这样:
@Model.Title
然后在我的 POST 操作中 ZoneView 带有空标题:
public ActionResult Edit(ZoneView zoneView)
在此之后我将其映射到域模型:
var zone = zonesRepository.Get(zoneView.ZoneId);
Mapper.Map<ZoneView, Zone>(zoneView, zone);
在此之后,区域中的标题为空。在这种情况下,最好的处理方式是什么?
【问题讨论】:
-
你为什么发布一个空标题?
-
@SLaks,因为我不希望用户编辑标题 - 只是为了显示它。所以它不会放在 TextEditor 中。
标签: asp.net-mvc viewmodel automapper