2012-02-16 24 views
1

我有一个xslt文件,我最初通过项目属性添加到项目的“资源”部分。在我的程序内部,我拨打Resources.MyXsltFile来获取字符串,并使用XslCompiledTransform.Load加载它。我的程序最初运行良好,但在更新xslt文件后,我注意到我的Resources.MyXsltFile仍在使用原始的xslt内容,而不是我的更新版本。这是怎么回事?项目资源变量不会更改值

回答

4

事实证明,当您更新其中一个资源文件时,编译的“Resources.Designer.cs”文件与该项目的“Resources.resx”一起不会被重新生成。因此您必须手动重新生成“Resources.Designer.cs”文件。这里是来自Marek Grzenkowicz的article,它显示了如何通过右键单击“Resources.resx”并单击“运行自定义工具”来重新生成文件。之后,我运行我的程序,并最终使用我的资源文件的更新版本。

0

另外,如果你不想使用自定义工具的解决方案,确保您的资源使用“无编号生成”在访问修饰符

+0

我可以在哪里配置?我在项目属性页面的“资源”选项卡的“访问修饰符”下拉列表中看到“内部”和“公共”选项,但没有“无代码生成”。它目前设置为“内部”。 – skeletank 2012-02-16 19:31:52

+0

内部是好的,它应该生成设计器文件并让你从静态方法访问数据。 – 2012-02-16 19:35:12