ASP.NET MVC 模型深入解析
1. 访问注册表与数据加载到视图
在任何地方,都可以通过以下表达式来读写注册表:
ApplicationContext.Registry
控制器方法可以按如下方式将数据加载到视图中:
var model = new CustomerViewModel();
model.CurrentCountry = parameters.Country;
model.Countries = ApplicationContext.Registry.GetCountries();
model.Customers = customers;
加载的代码不会泄露到视图中,也不属于控制器。同时,传递给视图的数据清晰可见且易于读取。
在ASP.NET MVC中,对于数据加载到视图这个问题,社区讨论并常用的解决方案有两种:
- 使用动作过滤器 :将缺失的数据加载到 ViewData 集合中,避免控制器动作处理这些数据。由于从动作过滤器中可能不知道模型的实际类型,所以向 ViewData 添加信息几乎是必要的。不过,如果项目针对C# 4,可以使用 dynamic 关键字避免使用 ViewData 。
- 使用渲染动作(仅适用于ASP.NET MVC 2)
超级会员免费看
订阅专栏 解锁全文
1080

被折叠的 条评论
为什么被折叠?



