访问资源文件

时间:2013-09-05 14:42:33

标签: asp.net asp.net-mvc-4

任何人都可以告诉如何访问类库asp.net mvc4中的资源文件吗?我正在构建一个通用的类库,我将在所有项目中使用它。我尝试使用以下代码:

  HttpContext.GetGlobalResourceObject();

任何人都可以告诉任何其他方法来访问类库中的资源文件吗?

5 个答案:

答案 0 :(得分:5)

根据评论进行编辑,包括最佳做法:

在MVC4中创建资源文件: 在解决方案资源管理器中,右键单击您的项目。 然后,单击“添加”,然后单击“添加ASP.Net文件夹”,然后单击App_GlobalResources。 在新文件夹上,右键单击。然后添加一个新的资源文件。

然后打开此资源文件并添加新资源。 lefter列是您设置键的位置,而更严格的列是您必须在其中插入的值。

然后;它非常简单,您只需编写以下代码部分即可访问所需的值。

在c#方面,它是:

Resources.NameOfYourResFile.NameOfYourResKey

在ASP方面,假设您正在使用剃须刀,它是:

@Resources.NameOfYourResFile.NameOfYourResKey

示例: 如果您创建了一个名为“Global.resx”的文件,并创建了“我的超级网站”作为值的密钥“ApplicationTitle”,您只需编写以下代码行将其放入字符串中:

 string siteTitle = Resources.Global.ApplicationTitle;

就是这样

答案 1 :(得分:3)

创建资源时,必须将访问级别从内部(默认情况下)设置为public。在此之后,您只需通过资源名称和生成的静态属性访问您的资源(如果您引用程序集)。

答案 2 :(得分:2)

我建议你为Resources创建一个新的库 完成资源键值对后,将资源库的引用添加到项目中。然后你就能以这种方式访问​​资源库

<强> Namespace.ReourceLibraryName.Key

答案 3 :(得分:1)

只需在您的类库项目中包含System.Web.dll,就像访问MVC项目一样访问资源文件

HttpContext.GetGlobalResourceObject();

当你在MVC项目中的这个类库项目中添加一个refrence并运行项目时,这段代码将在MVC项目的上下文中执行,你将获得HttpContext的正确实例。

注意: - 直接使用这样的HttpContext会在您尝试测试此应用程序时产生问题

答案 4 :(得分:1)

您可以将资源文件添加到类库中的任何位置,但我认为您的问题是如何使用它,如果您的资源文件名是Res1.resx并且其中有一个名为message的键,那么您可以调用< / p>

  Res1.message

来自该库中的类。但是我相信你想在图书馆外面使用它,因为你需要公开你的资源文件,请参考Visual Studio - Resx File default 'internal' to 'public' 请告诉我这是你需要的还是别的什么?

相关问题