如何将多个参数传递在WCF REST服务? [英] How to pass multiple parameters in WCF Rest Service?

查看:534
本文介绍了如何将多个参数传递在WCF REST服务?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在开发C#WCF REST服务。它工作正常的一个参数。现在我需要把它扩大到支持多个参数。请帮我在这个问题上



在此先感谢...



使用以下接口声明:

  [OperationContract的] 
[WebInvoke(方法=POST,
ResponseFormat = WebMessageFormat.Xml,
RequestFormat = WebMessageFormat.Xml,
BodyStyle = WebMessageBodyStyle.WrappedRequest,
UriTemplate =登录)]
resLogin登录(reqLogin RDATA,INT floorId);


解决方案

看看的UriTemplate参数的。您可以使用查询字符串或URL路径在 floorId 参数来传递。



URI路径参数



<预类=郎-CS prettyprint-覆盖> [WebInvoke(方法=POST,UriTemplate =登录/楼/ {floorId})]
resLogin登录(reqLogin RDATA,INT floorId);



查询参数



<预类=朗CS prettyprint-覆盖> [WebInvoke(方法=POST,UriTemplate =登录floorId = {} floorId?)
resLogin登录(reqLogin RDATA,INT floorId);


I'm developing WCF REST service in C#. It works fine for a single parameter. Now I need to extend it to support multiple parameters. Please help me on this issue.

Thanks in advance...

Use following declaration in interface:

[OperationContract]
[WebInvoke(Method = "POST",
    ResponseFormat = WebMessageFormat.Xml,
    RequestFormat = WebMessageFormat.Xml,
    BodyStyle = WebMessageBodyStyle.WrappedRequest,
    UriTemplate = "login")]
resLogin Login(reqLogin rData, int floorId);

解决方案

Take a look at UriTemplate parameters. You can use the QueryString or URL path to pass in the floorId parameter.

URI Path Parameter

[WebInvoke(Method = "POST", UriTemplate = "login/floor/{floorId}")]
resLogin Login(reqLogin rData, int floorId);

QueryString Parameter

[WebInvoke(Method = "POST", UriTemplate = "login?floorId={floorId}")]
resLogin Login(reqLogin rData, int floorId);

这篇关于如何将多个参数传递在WCF REST服务?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆