У меня есть данные xml, которые я преобразую, используя таблицу стилей xsl для формирования содержимого тела письма, и я использую метод SPUtility.SendEmail для отправки почты. У меня есть две ссылки: одна для просмотра формы Infopath и другая для утверждения / отклонения формы задачи. Ссылка на форму infopath работает правильно в моей почте, но не на другой. Я получаю ошибку «URL заблокирован для безопасности» в веб-клиенте Outlook.
<a title="Approve/Reject" style="color:#b94e0a;text-decoration:underline;">
<xsl:attribute name="href">
<xsl:text>http:/stage/_layouts/WrkTaskIP.aspx?List=91be5c14%2D6eea%2D4223%2D802e%2D7fa28b5d14ba&ID=</xsl:text>
<xsl:value-of
select="substring-before(/SRWorkflowDetails/SRLevel[level=$level and contains(Approver,$Id)]/URL,';')"
disable-output-escaping="yes"/>
<xsl:text>&Source=http://stage/_layouts/WrkStat.aspx?List=089f13be%2D3147%2D4818%2Da30e%2Da332cb63195d&WorkflowInstanceID=</xsl:text>
<xsl:value-of
select="substring-after(/SRWorkflowDetails/SRLevel[level=$level and contains(Approver,$Id)]/URL,';')"
disable-output-escaping="yes"/>
</xsl:attribute>
Approve/Reject
</a>
Выходная отформатированная ссылка:
<a
title="Approve/Reject"
style="color:#b94e0a;text-decoration:underline;"
href="http:/stage/_layouts/WrkTaskIP.aspx?List=91be5c14%2D6eea%2D4223%2D802e%2D7fa28b5d14ba&ID=35&Source=http://stage/_layouts/WrkStat.aspx?List=089f13be%2D3147%2D4818%2Da30e%2Da332cb63195d&WorkflowInstanceID=11e09c76-29ec-4c7f-ace3-ad7a8c9e7b44">
Approve/Reject
</a>
Когда я копирую и вставляю URL в браузер, я получаю приглашение «неожиданная ошибка произошла», затем я заменяю &
на & в браузере, я правильно открываю свою форму.
Это какая-то проблема с синтаксическим анализом в outlook, но у меня работает другая ссылка с &
??