Umbraco 4.7.1でXSLTからC#関数を呼び出しています。 私の関数は現在のノードの "tag"プロパティの値を返しています。問題は私の出力がエンコードされています。UmbracoがC#をXSLTで呼び出し、fXML出力をデコードする
xsltExtensions.configにアセンブリ拡張を追加しました。私のXSLTで
私は私の関数の値を取得してい
<xsl:value-of select="TagHelpers:ShowAllTags()" />
私のC#の機能:
public string ShowAllTags()
{
var node = new DynamicNode(Node.GetCurrent());
var html = new StringBuilder();
if (node.HasProperty("tags"))
{
var tagList = node.GetPropertyValue("tags");
if(tagList.Length > 0)
{
foreach (var tag in tagList)
{
html.Append(HttpUtility.HtmlEncode(tag));
}
}
}
return html.ToString();
私の出力は次のようになります。
%図3c%3fxml +バージョン%3d%221.0%22%3f%3e%0d%0a%3cClientValue + xmlns%3axsd%3d%22http%3a%2f%2fwww.w3.org%2f2001%2fXMLSchema%22 + xmlns%3axsi%3d%22http% 3a%2f%2fwww.w3.org%2f2001%2fXMLSchema-instance %22%3e%0d%0a ++%3cTags%3e%0d%0a ++++%3cstring%3efritidsjob%3c%2fstring%3e%0d%0a ++++%3cstring%3elo%3c%2fstring%3e%0d%0a ++++%3cstring%3ejobpatrulje%3c %2fstring%3E%0D%0A ++%3C%2fTags%3E%0D%0A ++%3cGroupName%3edefault%3C%2fGroupName%3E%0D%0A%3C%2fClientValue%3E
しかし、次のようになります。
あなたが選ぶあなたのXSLTに無効にする出力エンコード= "YES" を追加することにより、エンコーディングを取り除くことができfritidsjob、jobpatrulje、LO