как отправить параметр datetime в службу REST WCF - PullRequest
5 голосов
/ 26 марта 2011

У меня есть операция службы данных WCF:

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

но я не знаю, как вызвать эту службу из клиентского приложения .NET и как я могу вызвать эту операцию из Internet Explorer. Я ищу несколько примеров.

Ответы [ 5 ]

2 голосов
/ 26 марта 2011

Мы можем получить доступ к службам браузера RESTful WCF, как это

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

Но я думаю, что мы не можем указать тип данных DateTime, насколько я понимаю, это должна быть только строка.

1 голос
/ 26 марта 2011

Я нашел эту серию чрезвычайно полезной и богатой примерами того, как реализовать службы REST WCF (включая строки запросов и фильтры, а также вызовы из клиентского кода).

0 голосов
/ 18 сентября 2014

Так вы можете позвонить в соответствии с 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
0 голосов
/ 11 апреля 2014

Это работает для меня:

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

Я использую эту строку для отправки параметров URL-адреса службе REST, размещенной в приложении ASP.NET.

0 голосов
/ 27 марта 2011

Я наконец нашел ответ на свой вопрос. чтобы вызвать операцию из браузера, я использую:

   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());
...