为多个视图中使用的下拉列表填充ViewData的最佳方法是什么。如果在使用下拉列表的每个Action中完成,那么我们就违反了DRY主体。理想情况下,我们也应该缓存常用的SelectLists(例如国家,国家等)。
答案 0 :(得分:2)
我之前使用ActionFilters完成了它。就我而言,我需要在每一页上都有一份赞助商名单。
答案 1 :(得分:0)
您应该为这些视图准备基本视图模型,并通过继承特定视图中的数据来增强它:
class BaseViewModel
{
List<string> Countries;
List<string> States;
}
在我的应用程序中,我创建了一个包含缓存字典的对象。它实现了IApplicationCache接口(由我创建,它返回使用过的词典的列表),它被注入到业务逻辑层并用于填充视图模型。