У меня есть следующий фрагмент:
<div id="recommendFooter">
<% string urlRecommend = Url.Action("RecommendProduct", "Products", new { url = ViewContext.RequestContext.HttpContext.Request.Url.ToString() }); %>
<div>
<a href="<%= urlRecommend %>">This product is awesome!</a>
</div>
</div>
Это должно вывести Html следующим образом:
<div id="recommendFooter">
<div>
<a href="http://www.mysite.com/Products/RecommendProduct?url=http://www.mysite.com/products/productbykey/20" >This product is awesome!</a>
</div>
</div>
Я не уверен, что смогу Html-Encode urlRecommend или дажезначение ViewContext.RequestContext.HttpContext.Request.Url.ToString ().
У меня есть Запрос - Проверка включена, но для этой части предположим, что я не включил ее.Можно и нужно ли здесь Html-кодировать?
РЕДАКТИРОВАТЬ 1
Полагаю, это то, что предлагает Гуффа:
<div id="recommendFooter">
<% string urlRecommend = Url.Action("RecommendProduct", "Products", new { url = Server.UrlEncode( ViewContext.RequestContext.HttpContext.Request.Url.ToString() )});
string urlRecommendXssSave = Server.HtmlEncode(urlRecommend );
%>
<div>
<a href="<%= urlRecommendXssSave %>">This product is awesome!</a>
</div>
</div>