【问题标题】:Adding string to embedded resources file stops project from compiling将字符串添加到嵌入式资源文件会阻止项目编译
【发布时间】:2015-05-28 18:43:23
【问题描述】:
资源文件被编译为 Project1 中的嵌入资源。字符串通过以下方式访问代码:
Resources.ResourcesFileName.ResourceManager.GetString("Resource1");
Project1 编译并且工作正常。我在建造之前打扫过以确认。
当我向资源添加另一个字符串时,(TFS 检出文件)Project1 不再编译。
“ResourcesFileName”不是“Resources”的成员。
如何使用附加资源字符串再次编译它?
【问题讨论】:
标签:
c#
.net
c#-4.0
.net-4.0
embedded-resource
【解决方案1】:
一定有人将自定义工具命名空间(选择资源文件 -> 属性 -> 自定义工具命名空间)从 My.Resources 更改为 Resources。
这会生成一个类和文件 ResourcesFileName.Designer.cs 文件,其命名空间为 Resources。
然后他们签入了资源文件和设计器文件。然而,不知何故,他们在没有正确自定义工具命名空间的情况下签入了 csproj:
<EmbeddedResource Include="Resources\ResourceFileName.resx">
<CustomToolNamespace>My.Resources</CustomToolNamespace>
<Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>ResourceFileName.Designer.cs</LastGenOutput>**
</EmbeddedResource>