我正在本地化应用程序,并且需要为所有视图的JS应用程序的JS部分提供本地和全局资源的JSON表示。我目前的想法是我会实现HtmlHelper扩展方法,如GetLocalResourcesJSON/GetGlobalResourcesJSON应该对所有资源键+值进行编码,并返回JSON编码为字符串(我也会实现缓存)。asp.net MVC - 如何获取完整的本地和全球资源
目前我能够从属于当前视图的全局或本地资源中检索单个特定键(使用httpContext.GetGlobalResourceObject/GetLocalResourceObject),但我无法找到如何检索整个资源对象,迭代所有的键+值。有没有什么方法可以实现这个目标?
它看起来像ResourceProviderFactory可能是这个问题的关键,但它不能在任何地方公开访问。我可以实例化ResourceExpressionBuilder并使用反射来检索使用GetLocal/GlobalResourceProvider()方法的提供程序,但我不喜欢在这里使用反射...
此刻我解决它使用反射像这样: VAR的ResourceManager = ResourceExpressionBuilder.GetLocalResourceProvider(virtualPath) .CreateResourceManager(); 比使用resourceManager.GetResourceSet( )遍历所有的资源项目 虽然我不喜欢这个肮脏的解决方案;( – Buthrakaur 2009-06-04 10:31:05