【发布时间】:2010-02-14 16:25:25
【问题描述】:
为多个视图中使用的下拉列表填充 ViewData 的最佳方法是什么。如果在每个使用下拉菜单的操作中都这样做,那么我们就违反了 DRY 原则。理想情况下,我们应该缓存经常使用的 SelectList(例如国家、州等)。
【问题讨论】:
标签: asp.net-mvc
为多个视图中使用的下拉列表填充 ViewData 的最佳方法是什么。如果在每个使用下拉菜单的操作中都这样做,那么我们就违反了 DRY 原则。理想情况下,我们应该缓存经常使用的 SelectList(例如国家、州等)。
【问题讨论】:
标签: asp.net-mvc
我以前用 ActionFilters 做过。就我而言,我需要在每个页面上列出赞助商列表。
【讨论】:
您应该为这些视图准备基本视图模型,并通过继承特定视图的数据来增强它:
class BaseViewModel
{
List<string> Countries;
List<string> States;
}
在我的应用程序中,我创建了一个包含缓存字典的对象。它实现了 IApplicationCache 接口(由我创建,它返回使用过的字典列表),该接口被注入到业务逻辑层并用于填充视图模型。
【讨论】: