第一次发帖时间,
我一直在玩 MVC... 我有一个有多个输入字段的视图,其中一些字段在发布时可能是空白的。
帖子控制器内部的操作方法看起来像这样
public ActionResult Filter(int? id, string firstName, string lastName, bool? isMember)
我一直在使用一直在使用的 DynamicQuery 扩展,以便在我的数据库上执行动态 Linq 查询,我已经将它封装在一个 Search 对象中,该对象传递给数据访问层以供执行。
但是,我还有一个自定义的 ViewData 对象,它被传递回视图以显示输入值和查询结果。
这一切在代码中看起来有点讨厌,因为我必须同时设置搜索对象属性和 ViewDatas。
public ActionResult Filter(int? id, string firstName, string lastName, bool? isMember) {
var search = new Search {
Id = id,
FirstName = firstName,
LastName = lastName,
Member = isMember
};
var memberViewData = new MemberViewData {
Id = id,
FirstName = firstName,
LastName = lastName,
Member = isMember
};
memberViewData.Results = _dataRepository.GetMember(search);
return View("Search", memberViewData);
}
我是不是想太多了,真的应该将值传递给数据访问层并在控制器中填充 ViewData,还是我可以使用更优雅的模式或实践?
抱歉,如果这看起来很垃圾,没有分配人来反弹想法并有时间深入研究框架。