UriTemplate Wildcard для сопоставления фрагментов Uri с пробелами в методе WCF WebGet - PullRequest
1 голос
/ 02 декабря 2011

Я использую подстановочный знак UriTemplate, чтобы сопоставить всю строку URI после пути к WCF svc:

    [WebGet(
        UriTemplate = "feed/{*path}" 
        )]

Однако это совпадает только до первого пробела (или '+' или '% 20'), возможно ли получить его для соответствия пробелам?

Это работает: /feed.svc/Folder

Они не работают (возвращает только первый пробел)

/feed.svc/Folder Name

/feed.svc/Folder+Name

/feed.svc/Folder%20Name

Приветствия

1 Ответ

3 голосов
/ 03 декабря 2011

ОК, виновником были правила переписывания IIS, которые у меня были:

^([0-9a-zA-Z\-\.\/()]+) 

Это не совпадало с пробелами, поэтому мне просто пришлось добавить символ пробела в регулярное выражение, ala:

^([ 0-9a-zA-Z\-\.\/()]+)

Тада!

...