У меня есть службы WCF с этим объявлен операции:Не удается передать «% 26» переменной WebGet UriTemplate в службе WCF?
[WebGet(UriTemplate = "Test/{*testString}")]
public String Test(String testString)
{
return testString;
}
Однако при попытке вызова URL Test/You%26Me
, IIS возвращает ошибку:
A potentially dangerous Request.Path value was detected from the client (&).
Моя цель состоит, чтобы амперсанд в URI через его URL-кодирование:% 26
Подстановочный знак не помог. Есть ли способ предотвратить эту ошибку без отключения функций безопасности?
Я забыл указать, что я не использую .NET 4.0 еще - есть аналогичный вариант для .NET 3.5 ? – JoeGaggler
Я боюсь, что единственный вариант в 3.5 заключается в реализации пользовательского RequestValidator: http://msdn.microsoft.com/en-us/library/system.web.util.requestvalidator.aspx –
Это прекрасно, спасибо! – JoeGaggler