我们有一个很大的项目,只有英语。
业务用户有时需要更改应用程序中的文本,并且他们必须等到下一个版本才能获得更改。
一种可能的解决方案是将字符串放入数据库,另一种可能是未嵌入到程序集中的文本文件,以便在部署后能够更改它。
资源文件很有吸引力,因为它们已经有了一个用于创建访问类和属性的框架,但据我所知,它们只是嵌入到程序集中,并且不能(很容易)在之后修改。
解决此问题的最佳方法是什么?
答案 0 :(得分:3)
不,你错了 - 资源可以与你的其他代码分开编译,你可以为你的应用程序提供更新:
Creating Resource Files for Desktop Apps
.resources文件中的资源您可以使用
System.Resources.ResourceWriter
类以编程方式创建 二进制资源(.resources)文件直接来自代码。你也可以使用 Resource File Generator (Resgen.exe)从中创建.resources文件 文本文件或.resx文件。创建.resources文件后,您可以通过包含语言编译器的
/resource
开关将其嵌入到运行时可执行文件或库中,或使用Assembly Linker (Al.exe)将其嵌入到附属程序集中。
当您使用Visual Studio时,您可以通过其界面轻松添加资源文件,然后您将有一种简单的方法来编辑它。
我建议你:
en-US
文化创建本地化资源 - Visual Studio将在单独的文件中编译它,以便您可以轻松更新它而无需重新编译整个项目。或者:
当您使用VS 2010时,我假设您的项目是.NET 3.0,因此MSDN的正确链接是:
答案 1 :(得分:0)
尝试使用app.Config
。
app.config的主要好处是它直接附加到您的可执行文件。构建解决方案后,app.config
将与可执行文件一起复制。
来自What is App.config in C#.NET? How to use it?:
最简单的是,
app.config
是一个XML文件,其中包含许多预定义的配置节,并支持自定义配置节。 “配置部分”是XML的片段,其模式用于存储某种类型的信息。可以使用内置配置部分配置设置,例如
connectionStrings
或 appSettings 。您可以添加自己的自定义配置部分;这是一个高级主题,但对于构建强类型配置文件非常有用。
msdn中的app.config来源:How to: Add an Application Configuration File to a C# Project
答案 2 :(得分:-1)
我想我会用:
所以我可以创建一个外部资源文件,只需将输出复制到release文件夹。
您如何看待这种方法?
足够快吗?