C#を使用して作成された既存のxmlファイルに次のスタイルシート情報を挿入するにはどうすればよいですか?特定の場所にxmlのテキスト行を追加しますか?
<?xml-stylesheet type="text/xsl" href="_fileName.xsl"?>
または....新しいXMLファイルの作成時にこの行を追加できますか?
編集:
私はこのような何か、(ヒットと裁判)XmlSerialier
を使用して、上記を達成しようとした:
// assumes 'XML' file exists.
XmlDocument doc = new XmlDocument();
XElement dataElements = XElement.Load("_fileName.xml");
XmlSerializer xs = new XmlSerializer(typeof(Parents));
var ms = new MemoryStream();
xs.Serialize(ms, parents);
ms.Seek(0, SeekOrigin.Begin); // rewind stream to beginning
doc.Load(ms);
XmlProcessingInstruction pi;
string data = "type=\"text/xsl\" href=\"_fileName.xsl\"";
pi = doc.CreateProcessingInstruction("xml-stylesheet", data);
doc.InsertBefore(pi, doc.DocumentElement); // insert before root
doc.DocumentElement.Attributes.RemoveAll(); // remove namespaces
しかし、出力XMLが壊れてきている。
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="_fileName.xsl"?>
<parents />
希望の出力は次のようなものです:
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="_fileName.xsl"?>
<parents>
<parent>
<Child1>
<child2>
</parent>
</parents>
これは私の問題が何であるかを理解するのに役立ちましたか?
これはc#でどのライブラリを使用して作成されますか? – ub1k
上記の編集はどのようにしても助けになりましたか? – gsvirdi