通过url将一些值发送到.svc服务

时间:2017-12-21 09:33:00

标签: c# asp.net

我的网站上有一项服务运行良好,但现在我想通过网址传递一些值。这可能吗?

服务网址:http://example.com/Service.svc

我用它像:

ChannelFactory<IService> factory = new ChannelFactory<IService>("myKeyBinding");
IService service = factory.CreateChannel();
service.Method(value);

我想要的是:服务网址:http://example.com/Service.svc?some=value&another=value 并在我的网站上使用这些值。

1 个答案:

答案 0 :(得分:1)

WCF支持休息行为。这很简单:

首先使用WebInvoke

标记您的合同
[WebInvoke(UriTemplate = "Method/{some}/{another}", Method = Get, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare)]
string Method(string some, string another);

使用以下元数据创建新的ServiceBehavior:

<serviceMetadata httpGetEnabled=”true”/>

根据此行为创建新端点。它应该绑定为wsHttpBinding

现在,请致电您的服务:

http://example.com/Service.svc/Method?some=value&another=value