XmlDocument创建节点并增加带有“:”的属性出现问题。

小狼是个小程序 2015-10-12 06:18:21
我想用XmlDocument创建一个节点,比如
<meta-data android:name="test" />
但是发现不能创建有:的。
然后用了XmlElement xe1 = doc.CreateElement("meta-data");来创建,CreateAttribute的第三个参数写http://www.w3.org/1999/xmlns/怎么都不对。提示不正确。求大神帮忙解决一下~
下面是我的代码:

XmlNode application = doc.SelectSingleNode("/manifest/application");
//增加UMENG_APPKEY和UMENG_CHANNEL标示

XmlElement xe1 = doc.CreateElement("meta-data");
System.Xml.XmlAttribute xa1;
xa1 = doc.CreateAttribute("android", "name", w3NameSpace);
xa1.Value = "UMENG_APPKEY";
xe1.Attributes.Append(xa1);
application.AppendChild(xe1);


...全文
223 8 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 7 楼 shingoscar 的回复:
CreateAttribute("android", "name", "test");


这样结点上会多一个属性
xmlns:android="test"
  • 打赏
  • 举报
回复
我就只是想生成这个节点:
<meta-data android:name="abcabc" android:value="123123" />
应该怎么做?
Poopaye 2015-10-12
  • 打赏
  • 举报
回复
CreateAttribute("android", "name", "test");
  • 打赏
  • 举报
回复
引用 4 楼 dongxinxi 的回复:
android:name="test"这么写,android前缀将表示命名空间,类似xmlns:android='http://www.abc.com'这样声明
否则:或者&在xml中都应该用HTML转义

用XmlDocument怎么写呢?
  • 打赏
  • 举报
回复
android:name="test"这么写,android前缀将表示命名空间,类似xmlns:android='http://www.abc.com'这样声明
否则:或者&在xml中都应该用HTML转义
  • 打赏
  • 举报
回复
引用 2 楼 shingoscar 的回复:
最后那红框前面的:如果prefix为xmlns,
这句没看到吗?


引用 2 楼 shingoscar 的回复:
最后那红框前面的:如果prefix为xmlns,
这句没看到吗?


引用 2 楼 shingoscar 的回复:
最后那红框前面的:如果prefix为xmlns,
这句没看到吗?


那我要怎么才能创建一个这样的节点呢?
<meta-data android:name="test" />
Poopaye 2015-10-12
  • 打赏
  • 举报
回复
最后那红框前面的:如果prefix为xmlns,
这句没看到吗?
  • 打赏
  • 举报
回复
上面写错了http://www.w3.org/1999/xmlns/应该是http://www.w3.org/2000/xmlns/

2000也是这个问题。求大神啊~自顶~

111,097

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧