我的 asp.net 项目中有一个类,我想从站点的任何位置访问 GetGlobalResourceObject(该页面公开),可能吗?
换句话说,我想从一个不是我不在乎的页面的类中访问全局资源。
我的 asp.net 项目中有一个类,我想从站点的任何位置访问 GetGlobalResourceObject(该页面公开),可能吗?
换句话说,我想从一个不是我不在乎的页面的类中访问全局资源。
答:是的,如下伪:
Resources.<The name of the resources file name>.<your resource key>;
例子:
lblTitle.Text = Resources.MySettings.WebsiteTitle;
Resources
是一个 Visual-Studio 自动生成的命名空间,它公开了项目中的所有全局资源类和道具。
你应该使用
HttpContext.GetGlobalResourceObject("myResourceKey")
...因为这样在使用自定义 ResourceProvider 时它仍然可以工作。Resource 文件的默认类型生成器显式使用 Resx 提供程序,如果您实现类似数据库提供程序的东西,它将无法工作。
在某些农场,您需要将电话转至
HttpContext.GetGlobalResourceObject("myResourceKey")
在 try/catch 块内,以解决“找不到任何适合指定文化或中性文化的资源”错误。
如果您在该站点中,则可以访问 HttpContext 并且可以使用:
HttpContext.GetGlobalResourceObject("myResourceKey")
我从资源设计师那里得到了这个,
ResourceManager temp =
new ResourceManager("Resources.<<resource name>>",
System.Reflection.Assembly.Load("App_GlobalResources"));