首页 新闻 赞助 找找看

WCF4.0中REST模式下,URI与其相对应的方法参数是否只能为string?

0
悬赏园豆:10 [已解决问题] 解决于 2011-07-22 11:03

如题描述:代码如下

 [WebGet(UriTemplate = "{id}")]  
  public SampleItem Get(string id)    
  {  
       // TODO: Return the instance of SampleItem with the given id    
      throw new NotImplementedException();    
  }
Get方法中参数设置为int就报错说只能为string,记得在3.5版本下面的REST可以自己转换类型的;
现项目是3.5的希望升级到4.0,N多方法参数是int类型的,囧;

 
半边书生9527的主页 半边书生9527 | 初学一级 | 园豆:195
提问于:2011-07-21 18:16
< >
分享
最佳答案
0

不是,你还可以使用int等值类型数据.注意必须是参数,不能是uri路径的一部份.也就是说,你必须写成这样:

uritemplate = "?id=id"

public xxxx get(int id);


收获园豆:10
Launcher | 高人七级 |园豆:45045 | 2011-07-22 10:04
可能我没说太清楚,我是说对应的方法中的参数是否只能为string,在4.0中
半边书生9527 | 园豆:195 (初学一级) | 2011-07-22 10:33
OK了,查到了UriTemplate 的MSDN,应该早点看到,理解你的意思了,thx;对于{id}类型的需要为string,对于查询的可以用?id={id},后者可以为int类型;详见:http://msdn.microsoft.com/zh-cn/library/bb675245.aspx
半边书生9527 | 园豆:195 (初学一级) | 2011-07-22 11:03
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册