0

我想从 Episerver 的编辑模式下创建的属性中读取 XML 文档。

我已经创建了一个类型为“URL to Document”的属性。当我尝试从后面的代码中获取它时,它只提供文件路径。我无法读取属性中上传的 XML 文件的内容。

string XMLContent = Currentpage.Getproperty<string>("XMLFile");

有人可以帮忙吗?

4

2 回答 2

3

您还需要加载文件。像这样的东西:

var path = CurrentPage["XMLFile"] as string;

if (HostingEnvironment.VirtualPathProvider.FileExists(path))
{
    var file = HostingEnvironment.VirtualPathProvider.GetFile(path) as UnifiedFile;

    if (file != null)
    {
        using (var stream = file.Open())
        {
            // Here is your XML document
            var xml = XDocument.Load(stream);
        }
    }
}

您还可以使用磁盘上的本地路径 file.LocalPath 来加载文件内容。

于 2015-10-09T09:11:21.197 回答
0

尝试这个

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml;
using System.Xml.Linq;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            string XMLContent = "";

            //using XML
            XmlDocument doc1 = new XmlDocument();
            doc1.LoadXml(XMLContent);

            //using xml linq
            XDocument doc2 = XDocument.Parse(XMLContent);
        }
    }
}
​
于 2015-10-09T11:07:58.267 回答