如何将datetime参数提交给WCF REST服务

时间:2011-03-26 03:28:22

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

我有一个WCF数据服务操作:

[WebGet]
public bool isContractUpToDate(string contractId, string lastmodifiedDate);

但我不知道如何从.NET客户端应用程序调用此服务以及如何从Internet Explorer调用此操作。 我正在寻找一些例子。

5 个答案:

答案 0 :(得分:2)

我们可以像这样访问RESTful WCF浏览器服务

http://localhost:8080/Service/isContractUpToDate/ {contractId} / {lastmodifiedDate}

但是我认为我们不能指定DateTime数据类型,根据我的理解它应该只是字符串。

答案 1 :(得分:1)

我发现this series非常有用且丰富,有关如何实现WCF REST服务的示例(包括查询字符串和过滤器以及从客户端代码调用)。

答案 2 :(得分:0)

我终于找到了我的问题的答案。 要从浏览器调用操作,我使用:

   http://localhost:8080/service/ctrService.svc/isContractUpToDate?contractId='1'&lastmodifieddate='2012/02/04 00:00:00'

要从.NET客户端执行此操作,我使用:

    IEnumerable<bool> resp = service.Execute<bool>(new Uri("http://localhost:8080/pricingservice/PricingDataService.svc/isContractUpToDate?contractId='1'&" +"lastmodifieddate='"+DateTime.Now.ToString()+"'"));

        Console.WriteLine("is contract uptodate ? " + resp.First());

答案 3 :(得分:0)

这对我有用:

?startDate=2014-04-11T14:45:00&endDate=2014-05-31T23:59:59

我使用此字符串将url参数发送到ASP.NET应用程序中托管的REST服务。

答案 4 :(得分:0)

您可以根据MSDN

调用它
http://services.odata.org/Northwind/Northwind.svc/Customers('ALFKI')/Orders?$filter=ShippedDate gt datetime'1997-09-22T00:00:00'


datetime'1997-09-22T00:00:00