c# - 使用 C# Linq 修改 XML 文档
问题描述
我有一个循环通过 XML 的应用程序,然后从文件中的 url 下载文件我的 XML 格式是这样的:
<FileDownloads>
<Downloads ID="1">
<FriendlyName>MyFile</FriendlyName>
<URL>http://www.MyDownloadURL.com?p=m/MyFileName</URL>
<FileLocation>Tools\MyFIleName.exe</FileLocation>
<Selected>true</Selected>
<Switches></Switches>
</Downloads>
我在修改 XML IE 的元素时遇到问题:Url 如果它发生变化,并且还使用 Xelement 添加和删除整个元素。
我正在尝试下面的代码:
public void NewXML()
{
try
{
XDocument XDocAdd = XDocument.Load(path);
XElement DL = new XElement("Downloads");
DL.Add(new XElement("FriendlyName", prl.textBox_FN.Text));
DL.Add(new XElement("URL", prl.textBoxURL.Text));
DL.Add(new XElement("FileLocation", prl.textBoxFL.Text));
DL.Add(new XElement("Selected", prl.checkBox_DL.Checked));
DL.Add(new XElement("Switches", prl.textBox_Switches.Text));
XDocAdd.Element("FileDownloads").Add(DL);
XDocAdd.Save(@"C:\Test\Test10.xml");
}
catch (Exception err)
{
MessageBox.Show(err.Message);
MessageBox.Show(err.InnerException.ToString());
}
}
我是个菜鸟,所以任何帮助都会很棒!
解决方案
尝试这个:
XElement DL = new XElement("Downloads",
new XElement("FriendlyName", prl.textBox_FN.Text),
new XElement("URL", prl.textBoxURL.Text),
new XElement("FileLocation", prl.textBoxFL.Text),
new XElement("Selected", prl.checkBox_DL.Checked),
new XElement("Switches", prl.textBox_Switches.Text));
XDocAdd.Element("FileDownloads").Add(DL);
当您使用 XElement 创建 XML 时,您需要根据您的架构嵌套添加它们。
推荐阅读
- docker - GKE Kubernetes Ingress 未将流量路由到微服务
- javascript - 在 Node.JS 上使用 Puppeteer&Python 解决验证码
- reactjs - React Native 中涉及时间延迟的两种不同代码实现
- azure - Azure 函数将文件发送到 sftp 服务器
- sql-server - 如果客户/客户投诉报告无法在 SSRS 中正确加载,那么作为开发人员首先要做什么?
- google-sheets - 将文本从谷歌表格中的范围获取到不在表格中的谷歌文档
- amazon-web-services - AWS 放大 docker 映像部署
- antlr - ANTLR4 中的递归词法分析器规则有什么用?
- sql - Hive SQL 左连接基于来自第二个表的子字符串搜索
- typescript - TypeScript 函数参数,其参数只能是简单类型