我正在尝试在VS2015中创建新的资源文件。我很好地创建了它们,但当我尝试更改“访问修饰符”时,下拉菜单被禁用...
有什么想法吗?
我在ASP.NET MVC6 (ASP.NET5)中工作。该项目是一个类库,但我在Web项目中进行了测试,得到了相同的结果。
谢谢!!
编辑:添加的属性窗口
发布于 2015-12-16 22:20:12
您可以检查文件的属性并验证自定义工具是否为ResXFileCodeGenerator吗?如果为GlobalResourceProxyGenerator,则下拉列表将被禁用。
发布于 2016-06-20 16:03:19
我也有同样的问题,但我找到了这个简单的解决方案
总结一下:
发布于 2016-09-12 07:23:44
Asp.net核心 projects中的A)
此问题是Asp.net Core
项目中的known bug,默认情况下访问修改器位于public
上,您无法对其进行更改。它将由asp.net核心团队next updates 解决,但如果你需要internal
访问修饰符,你可以使用我的临时解决方案:
通过资源设计器将所有项目保存到解决方案资源管理器中,然后在解决方案资源管理器中展开
Resource.Designer.cs
Resource.resx
>D32和它打开其中的所有 public
字符串
注意:每次保存
Resource.resx
文件时,都应再次执行步骤3。
最后,您应该有一个带有如下访问修饰符的Resource.Designer.cs
文件:
还要检查Resource.Designer.cs
文件中的namespace
。它应该是适当的namespace
__。与您的项目namespace
__同步。
B)在 Normal Asp.net projects中
If您在资源(
.resx
)文件的Properties panel
中没有CustomTool
属性,可以将其更改为PublicResXFileCodeGenerator
并解决问题
然后您应该手动更改项目(.csproj
)文件中的一些设置。这很简单,只要按照我的指示做就行了:
在文件中右键点击你的项目,选择Unload Project
solution explorer
solution explorer
文件,然后选择find .resx
PublicResXFileCodeGenerator
):。
<EmbeddedResource Include="MyResourceFile.resx">
<SubType>Designer</SubType>
<Generator>PublicResXFileCodeGenerator</Generator> <!--important line-->
<LastGenOutput>MyResourceFile.Designer.cs</LastGenOutput>
</EmbeddedResource>
重新加载已编辑的.csproj
文件并在
solution explorer
.resx
solution explorer
;)
注意:使用您的资源文件名而不是
MyResourceFile
https://stackoverflow.com/questions/34314146
复制相似问题