#web-services #wcf
#веб-службы #wcf
Вопрос:
Я создал службы WCF и использую DoSomething()
такой метод:
public class MyService : IMyService
{
public void DoSomething()
{
WebOperationContext _ctx = WebOperationContext.Current;
_ctx.OutgoingResponse.StatusCode = System.Net.HttpStatusCode.OK;
}
}
Кроме того, мне нужно прочитать статус «ок» в моем коде, когда я использую эту службу:
ServiceClient _serviceClient = new ServiceClient();
_serviceClient.DoSomething();
WebOperationContext _ctx = WebOperationContext.Current;
var statusObj = _ctx.IncomingResponse.StatusCode;
Я обнаружил, что _ctx
это значение равно нулю
Я хотел бы спросить вас, как прочитать статус в моем statusObj
.
Ответ №1:
Вы можете попробовать это ,
Конечная точка Soap :
WCFServiceClient soapClient = new WCFServiceClient();
using (OperationContextScope scope = new OperationContextScope(soapClient.InnerChannel))
{
soapClient.DoSomething();
var response = (HttpResponseMessageProperty)OperationContext.Current.IncomingMessageProperties["httpResponse"];
var status = response.StatusCode;
}
Конечная точка отдыха :
var client = new RestClient("service-url/rest/DoSomething");
{
var request = new RestRequest(Method.GET);
IRestResponse response = client.Execute(request);
var status = response.StatusCode;
}