UriTemplate通配符,用于在WCF WebGet方法中将Uri片段与空格进行匹配

时间:2011-12-02 12:37:02

标签: wcf iis-7 .net-4.0 uritemplate

我正在使用UriTemplate通配符匹配WCF svc路径后的整个URI字符串:

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

然而,这只会匹配到第一个空格(或'+'或'%20'),是否可以让它与空格匹配?

这有效: /feed.svc/Folder

这些不起作用(仅返回第一个空格)

/feed.svc/Folder Name

/feed.svc/Folder+Name

/feed.svc/Folder%20Name

干杯

1 个答案:

答案 0 :(得分:3)

罪魁祸首是我改编的IIS重写规则:

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

这不是空格,所以我只需要将空格字符添加到正则表达式中,ala:

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

要!