Кодировка URL ссылки в XSLT - PullRequest
0 голосов
/ 05 октября 2009

Я пытаюсь сделать ссылку на страницу SharePoint из документа HTML, созданного с использованием XSL-преобразования, но он продолжает жаловаться, что ссылка недействительна:

<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 Ответ

2 голосов
/ 05 октября 2009

Я думаю, вам нужно использовать кодировку URL. Итак:

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

будет:

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

RFC-3986 содержит все детали, но в основном только подмножество символов ASCII может появляться в URL / URI. Символы '}' (и '{') не попадают в этот набор, поэтому к ним необходимо применить кодировку URL или «процент».

...