【问题标题】:UriTemplate prefix for RESTful WCF web serviceRESTful WCF Web 服务的 UriTemplate 前缀
【发布时间】:2013-07-24 02:37:50
【问题描述】:

我在 WCF 服务主机中有各种接口(端点),每个接口用于完全不同的关注点。在经典的肥皂网络服务中,我能够定义一个基本主机地址(例如http://myhost.com/)并将每个接口映射到一个相对URI(IServiceContract -> service/IMaintenanceContract -> maintenance/)所以我可以打电话给他们,例如http://myhost.com/service/mymethod.

现在,我正朝着使用 JSON 作为 CRUD Web 请求的消息格式的 RESTful WCF 服务迈出第一步,我看到解决操作的唯一方法是使用来自 WebInvokeUriTemplate 字段(或 @ 987654329@) 属性。不幸的是,我似乎无法将其放在接口上,只能放在操作合同方法上。

如何将每个接口映射到不同的相对 URI

【问题讨论】:

    标签: c# .net wcf web-services rest


    【解决方案1】:

    是的,您会将基本 url 放在 [OperationContract] 方法中。不过这没关系,因为您可以指定任何您想要的基本 url。这是一个示例界面,可为您提供此控件。

    namespace MyHostApi
    {
        [ServiceContract]
        public interface IMyHostApi
        {
    
            [OperationContract]
            [WebGet(BodyStyle = WebMessageBodyStyle.Bare,
                    UriTemplate = "WhateverYouWant/HelloWorld/{name}")]
            string HelloWorld(string format, string name);
    
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-01-09
      • 2011-09-30
      • 1970-01-01
      • 2016-07-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多