我有一种情况,我有一个字符串,其中应该包含今天的日期。问题是我需要将该字符串包括今天的日期放在 .resx 文件中。有什么办法吗?例如,关于版权字符串,它应该是 copyright-2012-abc 是今天的日期是 2012 年,它应该是 copyright-2013-abc 是今天的日期是 2013 年
编辑:我将仅将资源文件用于此版权内容。对于所有其他事物,它将是静态的,就像示例中一样,该年份的值将随着每一年的变化而变化。
我有一种情况,我有一个字符串,其中应该包含今天的日期。问题是我需要将该字符串包括今天的日期放在 .resx 文件中。有什么办法吗?例如,关于版权字符串,它应该是 copyright-2012-abc 是今天的日期是 2012 年,它应该是 copyright-2013-abc 是今天的日期是 2013 年
编辑:我将仅将资源文件用于此版权内容。对于所有其他事物,它将是静态的,就像示例中一样,该年份的值将随着每一年的变化而变化。
没有将“当前环境”值添加到 RESX(或任何其他 C# 相关文件)的内置方法。
但是您可以相对容易地创建预构建规则,该规则将调用您的自定义脚本/工具,根据您的喜好修改您的 RESX 文件。
一种选择是创建工具,该工具将生成稍后包含在 RESX 文件中的文件。这样可以避免修改 RESX 文件本身(如果 RESX 受源代码控制,这可能会出现问题)。根据您的需要,简单date /t > ..\..\out.txt
的 out.txt 包含在 RESX 中可能就足够了。
将构建时创建的文件包含到 RESX 中的步骤:
Console.WriteLine(Resource1.TextFile1)
RESX 示例内容:
<data name="TextFile1" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>textfile1.txt;System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089;utf-8</value>
</data>
resx 用于存储静态资源。尽管在运行时或在开发期间通过某种脚本来更改 resx 可能会有一些技巧,但是,这两种方法都为小功能引入了太多的复杂性。
如果您能阐明此类版权字符串的用例,读者也许可以提供更具体的建议。比如说,您是否仅将字符串用于在“关于”框中显示?还是程序集属性?