VS文件生成操作
- 遇到的问题
在WPF对xml配置文件进行数据绑定后,生成exe文件后。修改配置文件重新打开运行程序,界面中配置选项并未发生改变 - 问题原因
原因是xml配置文件的文件属性中"复制到输出目录"设置为“不复制”、“生成操作”设置为“嵌入的资源”,导致xml文件被编译到应用程序中。 - 解决方法
解决方法就是对上述的两个属性分别设置为"始终复制"和"内容",重新生成即可。解决方法很简单,但是没有意识到这一点的时候就会感觉晕头转向,云里雾里 O(∩_∩)O哈哈。针对此问题做了对文件属性的相关调查,针对文件生成操作,作如下记录(不足之处请指出感谢!):
参见VS 官方链接生成操作 项目类型 描述 AdditionalFiles C#、Visual Basic 作为输入传递给C#或Visual Basic编译器的非源文本文件。此生成操作主要用于向分析器提供输入,项目因为这些分析器来验证代码质量。 ApplicationDefinition WPF 定义应用程序的文件。首次创建项目时,这是App.xaml CodeAnalusisDictionary .NET 自定义单词字典,代码分析使用该字典进行拼写检查。 编译 任何 文件被传递到编译器作为源文件 内容 .NET 标记’"内容"的文件可以通过调用Application.GetContentStream作为流进行检索。对于ASP.NET项目,在部署站点时包含这些文件,作为站点的一部分 DesignData WPF 用于XAML ViewModel文件,允许在设计时使用虚拟类型和示例数据查看用户控件 DesignDataWithDesignTimeCreateableTypes WPF 与DesignaData类似,但具有实际类型 嵌入式资源 .NET 文件被传递到C#编译器作为嵌入程序集中的资源。可以调用System.Relection.Assembly.GetMainfestResourcesStream从程序集中读取文件 EntityDeploy .NET 用于指定EF项目部署的实体框架(EF).edmx文件 Fakes .NET 用于Microsoft Fakes测试框架 无 任何 文件不易任何方式生成。例如,此值可用于文档文件,例如"ReadMe"文件 页 WPF 将XAML文件编译为二进制.baml文件,以便在运行时提升加载速度 资源 WPF 指定将文件嵌入到扩展名为.g.resources的程序集清单资源文件中 阴影 .NET 用于包含生成的程序集文件名列表的.accessor文件,每行一个。对于列表中的每个程序集,生成名称为ClassName_Accessor的公共类,这些类与原始类类似,但具有公共方法,而不是私有方法。用于单元测试。 SplashScreen WPF 指定应用启动时在运行时显示的图像文件 XamlAppdef Windows Workflow Foundation 指示生成操作将工作流XAML文件生成为具有嵌入式工作流的程序集