使用资源(resx)在ClassLibrary中,可以在不重新编译的情况下进行更改

时间:2013-02-26 18:46:34

标签: c# .net resources resx

我需要制作一个ClassLibrary,以包含不同的资源文件(resx)。这需要完成,因此我可以在多个项目中重用这些资源。

在阅读了一段时间后如何实现这一点,我仍然没有接近答案。

请注意,如果我想更改值,我需要以不必重新编译proyect的方式实现此目的

有没有一种简单的方法可以实现这一目标,我不知道?

2 个答案:

答案 0 :(得分:2)

讨厌成为坏消息的承载者,但我担心你会尝试将RESX文件用于其他目的之外的事情。 RESX文件被编译为.resources文件,然后在构建期间将其嵌入到程序集中。换句话说,如果您重新编译,您将看不到对模块中反映的resx文件所做的任何更改。

答案 1 :(得分:0)

RESX文件的好处远远超出了提供与已部署解决方案紧密耦合的编译文化/语言文本。它们有可能提供在软件开发过程之外管理的简单灵活的内容集。这里有一些观点:

What are the benefits of resource(.resx) files?

是的,您可以使用RESX文件而无需编译它们。见这里:

Edit ASP.NET MVC 3 resx files in deployment server without recompiling

是的,您可以在不同项目之间共享RESX文件,甚至可以滚动您自己的资源管理器。您可以维护备用资源集,根据例如用户上下文提供备用内容。我参与了一个项目,在这个项目中,我们按照这些方式实施了一些非常有效的方法,在我的例子中,该解决方案用于提供白色标签。一些细节让你从这里开始:

http://msdn.microsoft.com/en-us/library/aa905797.aspx