【发布时间】:2012-03-06 09:34:48
【问题描述】:
如何访问 .Net Web 项目中的资源。我创建了一个 Web 项目,然后在 App_LocalResources 文件夹中添加了一个 resx 文件“AstroWap.resx”。现在我如何从中访问值。 My.Resources 属性本身不可用。
【问题讨论】:
标签: asp.net .net vb.net resources
如何访问 .Net Web 项目中的资源。我创建了一个 Web 项目,然后在 App_LocalResources 文件夹中添加了一个 resx 文件“AstroWap.resx”。现在我如何从中访问值。 My.Resources 属性本身不可用。
【问题讨论】:
标签: asp.net .net vb.net resources
使用资源文件的好参考读物here
【讨论】:
要创建访问属性 - 右键单击您的解决方案,选择属性,然后单击链接以创建资源文件。您应该看到一个 excel 类型的网格。在其中输入您的键值对。
访问它应该是
<Namespace>.Properties.Resources.<ResourceName>
问题可能是您如何添加资源。它可能绕过了自动生成的代码,它为您提供了上述语法
您可以通过查看您的 Web 项目的属性 -> 资源.resx -> 资源.cs.designer 来检查它是否添加了自动生成代码。设计器文件是自动生成的文件,您可以看到底层 resx 文件的访问代码。这假设您已使用上述默认 resx 文件。例如在解决方案资源管理器中查看图片
此外,如果您有一些项目限制,SO question 确实提供了更多访问 resx 文件的选项。我很感激由于团队合作等原因,不是每个人都能做到以上几点。这正是我所做的。它确实有效。
【讨论】:
使用以下代码:
<%=GetLocalResourceObject("labelname")%>
在 aspx 页面中。 如果您的页面名称是Test.aspx,那么您的资源文件必须名称为Test.aspx.resx,否则您无法访问资源文件的值。
【讨论】: