XSLT中的URL链接编码

时间:2009-10-05 13:56:07

标签: xml xslt encoding escaping

我正在尝试从使用XSL转换生成的HTML文档链接到SharePoint页面,但它一直抱怨链接无效:

<a href="site.aspx?List={5r45d0e2-f7eb-4658-a585-3277gr4327ee}&amp;RootFolderUrl=url&amp;Name=name">My Link</a>

显然,这个链接充满了不同寻常的角色,我不太清楚如何逃避它们。

我目前从Visual Studio获得的错误是:

  找到了预期的令牌'}'   'd0e2-f7eb-4658-a585-3277gr4327ee'。

任何人都可以看到一种逃避角色的方式,以便链接起作用吗? 谢谢:))

1 个答案:

答案 0 :(得分:2)

我认为你需要使用URL编码。所以:

{5r45d0e2-f7eb-4658-a585-3277gr4327ee}

将是:

%7B5r45d0e2-f7eb-4658-a585-3277gr4327ee%7D

RFC-3986包含所有细节,但基本上只有一部分ASCII字符可以出现在URL / URI中。 '}'(和'{')字符不属于此集,因此需要对其应用URL或'percent'编码。