包括C#代码文件以外的其他代码

时间:2018-05-21 19:04:57

标签: c# visual-studio

我的大项目将XML配置文件作为输入。我有这些XML的XSD架构。 XSD与任何其他C#代码文件一样放在Visual Studio中。我想将模式导入到exe中,因此没有人可以更改它并随之更改程序本身。

我想从代码中解决XSD架构,如下所示:

XmlSchemaSet schemas = new XmlSchemaSet();
schemas.Add("confcheck", MyProject.Configuration.ConfSchema );

其中Configuration是我的代码文件之间具有架构的文件夹

1 个答案:

答案 0 :(得分:1)

一般来说,我建议将配置放在项目附带的配置文件中(您可以从该文件创建和加载自定义配置部分),但是您可以采取多种途径来做您所描述的 - 所有其中涉及构建操作(右键单击对象然后属性):

enter image description here

  1. 将构建操作更改为嵌入资源then go here
  2. 将构建操作更改为内容并将副本设置为“始终” - 然后,您可以以编程方式打开它并在运行时序列化它(确保在代码中构建相对于执行目录的路径)
  3. 请记住,如果您将其设为内容并将其复制到输出文件夹,则任何有权访问安装目录的人都可以打开并修改它们 - 嵌入式资源也不是完全100%防篡改,但对于新手来说更是如此。