1
我有关于在视图模型中提取数据的问题。asp.net mvc视图模型和提取模型类中的数据
,比如我有视图模型:
public class EmployeeCreateVM
{
public Employee Employee { get; set; }
public List<EmployeeState> EmployeeStates { get; set; } // dropdownlist data
public List<EmployeeType> EmployeeTypes { get; set; } // dropdownlist data
public EmployeeCreateVM()
{
EmployeeStates = ...
EmployeeType = ...
}
}
我的问题是关于设计视图模型,特别是取数据。 对于我目前的项目,我从控制器读取数据,例如:
[Get]
EmployeeCreateVM model = new EmployeeCreateVM();
model.EmployeeStates = _repository....
[Post] - again
model.EmployeeStates = _repository....
是不好的做法,直接从视图模型类获取数据?
感谢
感谢有趣的联系。在我的应用程序中,我使用DI,所以如果我更改数据访问方法,我只需编写其他实现我的存储库类并将其设置在DI configi – Mennion 2012-01-11 13:53:26
@Mennion即使如此,你不应该在构造函数中使用它;视图模型(以及所有类)应该做一件事。想象一下,你只想将某些'EmployeeTypes'返回给你的控制器/视图,这将需要你编辑你的'EmployeeCreateVM'类,这感觉不对。 – wal 2012-01-11 14:07:35
@Wal - 是的,读取vm类中的数据对我来说是不自然的。但我喜欢DRY的原则,并获取vm在获取和发布行动是不是干... – Mennion 2012-01-11 14:23:17