如何解决如何使用XML / XElement将冒号:插入标记的第一部分...?
我正在尝试创建XML文档。
我需要文档来显示此内容...
<HART:HART xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:HART="www.myurlhere.com" xsi:schemaLocation="www.myurlhere">
这是我正在使用的代码
public FileStreamResult Submission(Models.Reporting.SubmissionViewModel svm)
{
MemoryStream ms = new MemoryStream();
XmlWriterSettings xws = new XmlWriterSettings();
xws.OmitXmlDeclaration = true;
xws.Indent = true;
XNamespace xmlns = XNamespace.Get("http://www.myurlhere.com");
XNamespace xsi = XNamespace.Get("http://www.w3.org/2001/XMLSchema-instance");
XNamespace schemaLocation = XNamespace.Get("http://www.myurlhere.com");
using (XmlWriter xw = XmlWriter.Create(ms,xws))
{
XDocument doc = new XDocument(
new XElement(xmlns + "HART",new XAttribute(XNamespace.Xmlns + "xsi",xsi),new XAttribute(xsi + "schemaLocation",schemaLocation)
));
doc.WriteTo(xw);
}
ms.Position = 0;
return File(ms,"text/xml","Sample.xml");
}
但是它显示如下
<HART xmlns="http://www.myurlhere.com" xsi:schemaLocation="http://www.myurlhere.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
如您所见,第一部分只是HART,而不是HART:HART
我以前从未做过此事,因此任何指导或帮助将不胜感激。
谢谢
解决方法
:前面的部分只是一个占位符,用于缩短名称空间。主要用于此操作,因为您需要使用多个名称空间。
通过在元素级别指定名称空间als xmlns =以下所有子元素将具有该名称空间,直到您再次指定带有xmlns =的子元素为止
如果您坚持拥有“terminal.integrated.shell.windows”:“C:\\Windows\\System32\\cmd.exe”
“terminal.integrated.shellArgs.windows”: [“/K”,“C:\\<path-to-conda-installation>\\Scripts\\activate.bat C:\\<path-to-conda-installation> & conda activate <your-env-name>”]
,则可以这样做
<HART:HART xmlns:HART="">
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。