我有一个需要填充数据从实体MVC在哪里放置配置我的viewmodel的代码?
我把这个方法我的控制器
public AssessmentResponseVM ConfigureAssessmentViewModel(AssessmentResponseVM model)
{
if (model.AssessmentID != null)
{
model.Questions = getQuestionAndAnswerList(model.AssessmentID);
}else
{
model.Questions = getQuestionAndAnswerList(null);
}
return model;
}
它基本上检索为提供评估问题和答案的列表,并为它们分配中的视图模型到视图模型的属性。这个ConfigureAssessmentViewModel
方法应该在哪里生活?目前它坐在我的控制器中,但我不确定我喜欢那里。它应该坐在viewmodel类还是其他地方?
基于太多的意见以适合SO的合适问题。由于映射可能只适用于控制器,因此控制器中的私有方法将会很好,并将其转移到单独的服务。但它不应该在你的视图模型类中 - 这会让你的代码无法进行单元测试,而无需将视图注入到视图模型中。您的视图模型应该不了解关联的数据模型(反之亦然) –