WCF REST를 사용하여 사용자 정의 HTTP 상태 코드를 어떻게 읽을 수 있습니까?

StackOverflow https://stackoverflow.com/questions/415206

  •  03-07-2019
  •  | 
  •  

문제

WCF의 channelfactory를 사용하여 REST 서비스를 호출하고 있으며 서버가 PUT 호출에 대한 응답으로 HTTP 200 또는 201을 반환했는지 여부를 결정하고 싶습니다. 현재 호출이 성공하지만 내 객체가 생성되었는지 또는 업데이트되었는지 확인할 수 없습니다. 어떻게 할 수 있습니까?

도움이 되었습니까?

해결책

WCF는 모든 종류의 채널을 위해 설계되었으므로 높은 수준의 객체가 아닙니다.

이런 식으로 액세스 할 수 있습니다

factory.Endpoint.Behaviors.Add(new WebHttpBehavior());
IMyContract proxy = factory.CreateChannel();
using (OperationContextScope scope = new OperationContextScope((IContextChannel)proxy)) {
    proxy.MyMethod("Some data"));
    var responseCode = WebOperationContext.Current.IncomingResponse.StatusCode;
}
((IClientChannel)proxy).Close();
factory.Close();
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top