我有一个资源文件strings.resx,生成的资源类在strings1.designer.cs中。为什么会这样呢?问题具体在于“1”。该文件内的类名是“strings”,正如它应该的那样。
请注意,我确实尝试删除 Designer.cs 并通过保存 resx 文件重新生成它,但这并没有改变任何内容。
我刚刚遇到这个问题,并在 .csproj 文件中发现了问题。 Visual Studio 似乎保存了它最后使用的文件名,并尝试再次使用该文件名生成。所以如果由于某种原因字符串.designer.cs曾经生成为Strings1.designer.cs看起来VS将继续使用Strings1。
下面您可以看到 .csproj 文件中给我带来问题的部分。最重要的是<LastGenOutput>
在最后的地方Strings1.designer.cs已保存。
<Compile Include="App_GlobalResources\Strings.Designer.cs">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>Strings.resx</DependentUpon>
</Compile>
<Compile Include="App_GlobalResources\Strings.es.designer.cs">
<AutoGen>True</AutoGen>
<DesignTime>True</DesignTime>
<DependentUpon>Strings.es.resx</DependentUpon>
</Compile>
...
<ItemGroup>
<EmbeddedResource Include="App_GlobalResources\Strings.es.resx">
<Generator>GlobalResourceProxyGenerator</Generator>
<LastGenOutput>Strings.es.designer.cs</LastGenOutput>
</EmbeddedResource>
<EmbeddedResource Include="App_GlobalResources\Strings.resx">
<Generator>GlobalResourceProxyGenerator</Generator>
<LastGenOutput>Strings1.designer.cs</LastGenOutput>
</EmbeddedResource>
</ItemGroup>
改变<LastGenOutput>
以下解决了我的问题:
<LastGenOutput>Strings.designer.cs</LastGenOutput>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)