Mr_*_*een 9 c# xml linq c#-4.0
我是.net初学者.我需要向xml文件添加一些数据
xml文件是:
<stock> --- 1st level /* i dont want to create this because this exists */
<items> -- 2nd level
<productname>Toothpaste</productname>
<brandname>Colgate</brandname>
<quantity>12</quantity>
<price>10</price>
</items>
<items>
<productname>Toothpaste</productname>
<brandname>Pepsodent</brandname>
<quantity>20</quantity>
<price>12</price>
</items>
</stock>
Run Code Online (Sandbox Code Playgroud)
我需要补充一下
productname --> Toothpaste
brandname --> CloseUp
quantity --> 16
price --> 15
Run Code Online (Sandbox Code Playgroud)
到他们各自的标签.我现在面临的问题是我需要深入两个级别才能写入各自的标签,我不知道该怎么做.
我尝试了下面的代码:( 不工作)
XDocument doc = new XDocument(
new XElement("stock", /* how to go inside existing "stock"? */
new XElement("items",
new XElement("productname", "Toothpaste"),
new XElement("brandname", "CloseUp"),
new XElement("quantity","16"),
new XElement("price","15"))));
Run Code Online (Sandbox Code Playgroud)
必须有其他方法来实现这一点,我不知道.
与linq无关的答案也很受欢迎.但更喜欢linq因为我在我的项目中实现了完整的linq.
请
提前帮助
谢谢.
Hen*_*man 22
假设你有原始文件:
var doc = XDocument.Load(...);
Run Code Online (Sandbox Code Playgroud)
然后创建一个新元素(而不是文档)
//XDocument doc = new XDocument(
// new XElement("stock", /* how to go inside existing "stock"? */
var newElement = new XElement("items",
new XElement("productname", "Toothpaste"),
new XElement("brandname", "CloseUp"),
new XElement("quantity","16"),
new XElement("price","15"));
Run Code Online (Sandbox Code Playgroud)
然后插入它:
doc.Element("stock").Add(newElement);
doc.Save(....);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
12052 次 |
最近记录: |