2010-06-14 93 views
0

我试图在MVC 2网页中实现自定义区域设置服务。我有一个接口IResourceDictionary,它提供了一些通过文化访问资源的方法。这是因为我想避免.Net资源的静态类。ASP.Net MVC中的其他信息查看

问题是从视图访问所选的IResourceDictionary。我已经考虑使用给定的ViewDataDictionary,创建一个基本控制器,我的所有控制器都从这个控制器继承,在每个操作执行之前,我的IResourceDictionary都会添加到ViewData中。

然后,我可以打电话给我的资源字典是这样的:

(ViewData["Resources"] as IResourceDictionary).GetEntry(params); 

诚然,这是非常冗长和丑陋,尤其是在嵌入式代码,因为我们鼓励MVC使用。现在我倾向于静态课程访问

ResourceDictionary.GetEntry(params); 

因为它稍微更优雅。我也想过把它添加到我为每个页面输入的模型,这似乎比将其添加到ViewData更强大。

什么是从视图访问我的ResourceDictionary的首选方法?我的所有观点都将使用这本词典。

回答

1

的HtmlHelper扩展,这将允许你打电话给你的方法是这样的:

<%: Html.GetEntry(params) %> 

似乎是一个不错的解决方案