我们说我有这个模型:
public class Person
{
public string forename { get; set; }
public string surname { get; set; }
public string randomValue { get; set; }
}
和这个ViewModel:
public class PersonViewModel
{
public Person person { get; set; }
public bool viewSpecificOption { get; set;}
}
然后这个控制器:
public ActionResult Create([Bind(Include = "person, viewSpecificOption")] PersonViewModel viewModel)
{
//some code here...
}
你可以看到我绑定了' Person',但是如果我不想包含' Person.randomValue'
我知道我可以替换“人物”。在viewModel中有一个forename和surname字符串,但我必须手动将其转换为实际的Person。
关于如何实现这一目标的任何建议都是一种安全可靠的方式?
答案 0 :(得分:0)
感谢@StephenMuecke在他们的评论中链接的文章。我很满意采用不使用bind的方法,只使用特定的ViewModels。
但是如果有人遇到这个问题并且有更好的方法可以避免将ViewModel映射到实际模型,请告诉我。