0

我正在创建一个类库,并且我在解决方案目录中创建了一个名为 config 的文件夹。我在文件夹中放置了一个 xml。

如何在我的类函数中加载 xml 文件?

我试过如下,它没有加载

        XmlDocument contentxml = new XmlDocument();
        String configxmlfile = System.AppDomain.CurrentDomain.BaseDirectory.ToString() + "Config\\instruction.xml";
        contentxml.Load(configxmlfile);

我想将 xml 文件与 dll 绑定,因为我要在另一个应用程序中上传 dll,我将从 dll 调用我的类,我的类将在那里查找 xml 文件信息。

4

2 回答 2

1

为了将 xml 嵌入到程序集中

1. Right click the xml file and Select properties
2. In the Properties Pane Set the BuildAction as Embeded resource
So this Xml becomes a embeded resource when the application is compiled

然后您可以通过以下代码从程序集中读取xml

   System.Reflection.Assembly _assembly = Assembly.GetExecutingAssembly();
   System.IO.Stream _xmlStream = _assembly.GetManifestResourceStream("[[YourNamespace]].[[XMLFileName.xml]]");
   System.IO.StreamReader _textStreamReader = new System.IO.StreamReader(_xmlStream);
   string xml = _textStreamReader.ReadToEnd();
于 2012-07-26T11:02:01.163 回答
0

例如,您可以将“资源文件”添加到您的项目中,并将 xml 添加到此资源文件(Resources.resx)中。

以下是获取 xml 内容的一些代码(在我的示例中为 config.xml):

public class Class1
{
    public XDocument GetXml()
    {
        return XDocument.Parse(Resources.config);
    }
}

现在,在另一个项目中:

MyClassLibrary.Class1 c = new MyClassLibrary.Class1();
var xml = c.GetXml();
于 2012-07-26T11:00:41.880 回答