-1

私は問題があります。次のように XAttribute に名前を付けることはできません: XAttribute("xmlns", nss.NamespaceName)

XNamespace ns = "urn:hl7-org:v3"; XNamespace nsVoc = "urn:hl7-org:v3/voc";

 new XElement("ClinicalDocument",
              new XAttribute(XNamespace.Xmlns + "xsi", xsiNs.NamespaceName),
              new XAttribute("xmlns", nss.NamespaceName),
              new XAttribute(XNamespace.Xmlns + "voc", nsVoc.NamespaceName),
              new XAttribute(xsiNs + "schemaLocation", ns.NamespaceName + "../Schemas/cda/Schemas/CDA.xsd"), 
 new XElement("typeId",
              new XAttribute("root", rootTypeId),
              new XAttribute("extension", extensionTypeId)),
 new XElement("templateId",
              new XAttribute("root", rootTemplateId)),
              new XElement("templateId",
              new XAttribute("root", rootTemplatedId)),

. . .

私はここでこの親のうなずきを閉じません..私は最後のうなずきの間に2000行あります

メッセージは次のとおりです: プレフィックス「」は、同じ開始要素タグ内で「」から「urn:hl7-org:v3」に再定義できません。

4

1 に答える 1

0

それ以外の

new XElement("ClinicalDocument",
              new XAttribute(XNamespace.Xmlns + "xsi", xsiNs.NamespaceName),
              new XAttribute("xmlns", nss.NamespaceName),

あなたが必要

XNamespace df = nss.NamespaceName;
new XElement(df + "ClinicalDocument", 
  new XAttribute(XNamespace.Xmlns + "xsi", xsiNs.NamespaceName),
              new XAttribute(XNamespace.Xmlns + "voc", nsVoc.NamespaceName),
              new XAttribute(xsiNs + "schemaLocation", ns.NamespaceName + "../Schemas/cda/Schemas/CDA.xsd"), 
 new XElement(df + "typeId",

そのため、そのデフォルトの名前空間の XNamespace を作成する必要があります。次に、コードでnew XElement()呼び出しが使用されていることを確認する必要があります。たとえばnew XElement(df + "foo")、正しい名前空間に要素を作成します。

于 2014-11-05T08:52:21.957 に答える