引用解决方案中多个项目的资源文件
时间:2020-03-05 18:46:19 来源:igfitidea点击:
我正在为包含多个项目的asp.net应用程序进行本地化。
为此,其中一些项目中使用了一些字符串。自然,我希望每个项目中只有一个资源文件副本。
由于资源文件没有名称空间(至少据我所知),因此无法像常规类一样访问它们。
在相同的解决方案中,是否有任何方法可以引用另一个项目中的resx文件?
解决方案
回答
有关如何处理此类情况的一些有用建议,可在此处找到:
http://www.codeproject.com/KB/dotnet/Localization.aspx
回答
我们可以只创建一个类库项目,在其中添加资源文件,然后参考该程序集以获取公共资源。
回答
在解决方案中的所有项目之间共享一个汇编info.cs文件之前,我曾使用过该解决方案,我认为同样的解决方案也可以在资源文件中使用。
创建一个链接文件到每个单独的项目/类库。只会有一个副本,并且每个项目在编译时都会通过链接文件对代码进行引用。这是一种非常优雅的解决方案,无需复制代码即可解决共享的非公共资源。
<Compile Include="path to shared file usually relative"> <Link>filename for Visual Studio To Dispaly.resx</Link> </Compile>
将该代码添加到csproj文件的complile项目组中,然后将路径替换为resx文件的实际路径,便可以打开它们。
对一个项目文件完成此操作后,我们应该可以将链接的文件复制并粘贴到其他项目,而无需修改csproj。