首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在指定了UriTemplate的情况下使用WebChannelFactory访问WCF REST操作

在指定了UriTemplate的情况下使用WebChannelFactory访问WCF REST操作
EN

Stack Overflow用户
提问于 2012-08-09 10:34:24
回答 1查看 2.1K关注 0票数 0

根据下面的代码片段,我有一个WCF Rest服务

代码语言:javascript
复制
[ServiceContract]
public interface IService
{
     [OperationContract]
        [WebInvoke(UriTemplate="/SaveList/Foos/",Method="POST")]
        bool SaveList(List<Foo> myFoos);

}

该服务是自托管服务,并使用webHttpBinding公开一个终结点。我有一个客户端控制台应用程序,它包含以下代码片段:

代码语言:javascript
复制
public void Send()
{
   var myObj = new Foo{Id=1, Name="Test"};
   using (WebChannelFactory<OurService.Services.IOurService> cf = new WebChannelFactory<IOurService>("WebHttpBinding_IService"))
   {
       IUtranetService channel = cf.CreateChannel();
       using (new OperationContextScope(channel as IContextChannel))
       {
           var status = channel.SaveList(new[] { myObj });

        }

    }

} 

客户端代码抛出一个异常,如下所示:没有端点在"http://localhost:1133/Service/SaveList“上侦听可以接受消息。

我不确定我错在哪里。如果我从服务契约中删除UriTemplate,客户端将返回正确的响应。

任何帮助都将不胜感激。

致敬Ruchitra

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-09 18:32:04

您的URI模板不正确。您需要将其更改为:

代码语言:javascript
复制
 [WebInvoke(UriTemplate="/SaveList/Foos/SaveList",Method="POST")] 

它不会自动附加你的方法名。

另供参考,根据我留下的评论,你不需要Method=“帖子”

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11875999

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档