我有一个 WCF 服务,它使用 JSON 响应。我需要创建一个可以在生产服务器上编辑的语言文件。如果我需要回收应用程序池,没问题。
我正要使用资源文件,但我担心最终用户无法编辑它。我不需要务实地编辑它,最终用户将通过在记事本中打开文件来编辑它,而无需重新编译应用程序。
你有什么建议?
谢谢
是的,您可以使用ResXResourceWriter类。
如果您还需要生成 Designer.cs 文件,请参阅此问题Programmatically generate Designer.cs for resx file (ResXResourceWriter/ResXResourceReader)
如果您需要修改现有的 resx 文件,请参阅此问题Modifying .resx file in c#
根据 MSDN,您可以在运行时添加新资源:
部署应用程序后,您可以逐步为新文化添加资源。由于后续开发特定文化资源可能需要大量时间,因此您可以先发布主应用程序,然后再交付特定文化资源。
http://msdn.microsoft.com/en-us/library/sb6a8618%28v=vs.110%29.aspx
我认为编辑当前资源也可以。
您的用户应该能够毫无问题地编辑文件,资源文件是可以在记事本或任何文本编辑器中打开的 XML 文件,他们甚至可以在 Excel 中打开它并获得可以轻松编辑的多个列。
这将需要回收您的应用程序池,但您对此持开放态度。
[编辑] 如果您的资源文件被标记为内容,您不需要像我之前提到的那样重新编译,但是您的应用程序池将被回收以获取更改
我不确定,但似乎用户无法在运行时使用记事本编辑资源文件,并且应用程序应该重建以使更改生效。
使用用户范围设置文件可以完成这项工作。