c# - 不检索 XML 文件并指示来自新闻的页面

标签 c# xml

就像新闻应该列在我的 xml 文件中一样。现在什么都没有,但它必须是这样的,它刚创建就表明新闻。

就目前而言,什么也没有出现

没有关于它的错误信息

<?xml version="1.0" encoding="utf-8"?>
<urlset>
  <new>
    <url>
      <Loc></Loc>
      <lastmod></lastmod>
      <changefreq></changefreq>
    </url>
  </new>
</urlset>

在此处更新 XML:

public static void ListXML()
    {
        using (var DB = new DBEntitiesDatabase())
        {
            var url = @"C:\Users\HelloWorld\Documents\visual studio 2017\Projects\Test\Website";
            var urlxml = url + "/sitemap.xml";
            XDocument doc = XDocument.Load(urlxml);
            var newlist = DB.New.OrderBy(i => i.NewId).ToList();
            foreach (var item in newlist)
            {
                new XElement("new",
                    new XElement("url",
                      new XElement("Loc", url + "/nyhed/" + item.url + "/" + item.NewId),
                      new XElement("lastmod", item.opretDato),
                      new XElement("changefreq", "daily")));
            }

            doc.Save(urlxml);
        }
    }

最佳答案

看来您正在生成 xml 标记,但没有将其附加到 xml 文档。

解决方案:尝试像这样将您的标签附加到文档中:

// in foreach loop
var newTag = new XElement("new"... /*etc like you generating it*/);
// assuming you already have root xml tag in your file
doc.Root.Add(newTag);

(我不记得 XDocument 树操作的确切 API,但希望你明白了)

关于c# - 不检索 XML 文件并指示来自新闻的页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45462788/

相关文章:

c# - 从新类访问数据集和表适配器

c# - 在 Startup.cs 中添加 DbContextOptions 而不是注册数据存储

xml - 将字符串转换为 XSLT 中的日期格式

java - 解析具有多个属性的 XML 以列出

c# - Ubuntu 上的 Mono 堆栈/堆损坏导致段错误

c# - Newtonsoft.Json FormatterAssemblyStyle=Simple 在反序列化时仍然需要程序集名称中的 Version

c# - 从 exe 中检索 COM ProgID 而无需注册

java - 从 fragment 膨胀 Activity 时出错 : InflateException

xml - Golang 指定 xml 结构中的顶级标签

sql - 使用来自 Oracle 数据库的 SQL 从 XML Clob 中提取数据