繁体   English   中英

XML文件可以包含在Visual Studio 2010项目中,然后在代码中引用吗?

[英]Can an XML file be included in a Visual Studio 2010 project and then referred to in code?

是否可以在Visual Studio 2010项目中存储实际的XML文件,然后在代码中引用它?

即。 我可以存储XML文件(请参见下面的片段),然后在XML数据中引用数据元素吗? 如何做到这一点,以及如何使用C#或VB代码在XML数据的深处引用数据元素?

如果将XML文件添加到项目中,则在编译时会将其嵌入到DLL或EXE中吗? 如果没有,如何将其嵌入DLL或EXE?

<readReferenceDataResponse xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<readReferenceDataResult xmlns="http://test.website.com/hi/xsd/providermessages/ReadReferenceData/5.6.9">
    <elementReferenceValues>
      <elementName>organisationTypeCode</elementName>
      <referenceSet>
        <referenceCode xmlns="http://test.website.com/hi/xsd/providercore/Elements/5.6.9">1678</referenceCode>
        <referenceDescription xmlns="http://test.website.com/hi/xsd/providercore/Elements/5.6.9">Accupuncture and Eastern Medicine</referenceDescription>
      </referenceSet>
      <referenceSet>
        <referenceCode xmlns="http://test.website.com/hi/xsd/providercore/Elements/5.6.9">6454</referenceCode>
        <referenceDescription xmlns="http://test.website.com/hi/xsd/providercore/Elements/5.6.9">Technical and Laboratory Services</referenceDescription>
      </referenceSet>
      <referenceSet>
        <referenceCode xmlns="http://test.website.com/hi/xsd/providercore/Elements/5.6.9">9782</referenceCode>
        <referenceDescription xmlns="http://test.website.com/hi/xsd/providercore/Elements/5.6.9">Naturopathy and Natural Health</referenceDescription>
      </referenceSet>
      <referenceSet>
        <referenceCode xmlns="http://test.website.com/hi/xsd/providercore/Elements/5.6.9>8557</referenceCode>
        <referenceDescription xmlns="http://test.website.com/hi/xsd/providercore/Elements/5.6.9">Aged Care Services</referenceDescription>

如果资源文件( .resx不存在,则只需将添加到您的项目中即可。 选择文件作为资源类型,然后将XML文件拖到其中,并为其命名(如果您不喜欢自动生成的文件)。

这将创建一个嵌入式资源类型,然后您可以通过自动生成的代表资源的类在代码中进行访问,例如,如果您的项目名为Foo并且添加了一个名为Resources的资源文件,并添加了一个名为MyData的XML文件资源,则您可以通过代码在Foo.Resources.MyData中访问该资源。 这会将文件的内容显示为字符串,然后可以根据需要使用XmlDocument.LoadXml将其加载到XmlDocument对象中。

听起来,我能想到的最佳解决方案是使用XmlDocument

您可以使用XmlDocument来保存要读取的XML文件,然后可以从那里检索元素/节点。

如果您想要更快一点,还可以使用Linq to XML ,这很好用且简单。

最后,如果您有内存限制/不想将整个文档加载到内存中以经常读取它,则可以使用XmlReader 这使您可以逐个节点直接从文件读取它。 但是,它仅是向前的,并且使用起来有些棘手。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM