2

XDocument.Saveを呼び出すと、html<br/>タグがエンコードされますが、これを防ぐ方法はありますか?

XDocument xDoc = new XDocument(new XElement("desc","jon skeet <br/> knows, the <br/> answer"));
xDoc.Save(Server.MapPath("~/tempUploads/encodeTest.xml"));

出力は次のとおりです。

<?xml version="1.0" encoding="utf-8"?>
<desc>jon skeet &lt;br/&gt; knows, the &lt;br/&gt; answer</desc>

私が好きな出力:

<?xml version="1.0" encoding="utf-8"?>
<desc>jon skeet <br/> knows, the <br/> answer</desc>
4

1 に答える 1

5

これは予想される動作です。の内部テキストXElementをその文字列に設定します。エンコードする必要があります。そうしないと、複数のタグが作成されます。

実際には複数のタグが必要なので、それらを作成する必要があります。最も簡単な方法は、次を使用することXElement.Parseです。

var content = XElement.Parse("<desc>jon skeet <br/> knows, the <br/> answer</desc>");
var xDoc = new XDocument(content);
于 2012-10-11T11:24:24.627 に答える