2012-04-16 11 views
0

RESTful WCF 서비스에서 [webinvoke] 속성을 가진 메소드에 액세스 할 수 없습니다.WCF의 [WebInvoke] 속성을 가진 임의의 mothod에 액세스 할 수 없습니다. 휴식 서비스

내 코드는 다음과 같다 :

[OperationContract] 
[WebInvoke(Method = "Post", UriTemplate = "Comosite/{composite}", ResponseFormat = WebMessageFormat.Xml)] 
CompositeType GetDataUsingDataContract(string composite);   

위의 서비스를 실행에 내가

방법이 허용되지 않는 오류 메시지를 받고 있습니다.

urltemplate, 메소드 이름 및 메소드 유형을 수정하여 여러 방법을 시도했지만 아무 것도 해결되지 않았습니다.

그러나 [WebGet] 속성을 사용하면 서비스 메소드가 정상적으로 작동합니다.

아무도 내가 할 수있는 일을 제안 할 수 있습니까? 사전에

덕분에 ...

+0

것은 내가 작업을 삭제/후/풋을 수행 할 것입니다에

[WebInvoke(Method = "Post", UriTemplate = "Comosite/{composite}", ResponseFormat = WebMessageFormat.Xml)] 

을 변경. 사용하여 얻을 수있는 서비스에서 날짜를 얻을 수 있지만 일은 그냥 데이터를 가져오고 싶지, 업데이트 및 데이터 작업을 삭제하려면 수행하려는. 그 때문에 나는 webinvoke와 post 방법으로 테스트하고 있었다. post 메서드가 잘 작동하면 삭제하고 메서드를 넣을 수 있습니다. – user1335978

+0

확인 http://msdn.microsoft.com/en-us/library/bb472541(v=vs.90).aspx – Milee

+0

서비스 호출에 사용 된 코드 중 일부를 표시 할 수 있습니까? – Bassetassen

답변

1

시도

[WebInvoke(Method = "POST", UriTemplate = "Comosite/{composite}", ResponseFormat = WebMessageFormat.Xml)] 
1

: 나는 당신이했던 것처럼 비슷한 서비스를 생성하고 피들러로 전화해서 내가 모두 대문자를 게시 할 방법을 변경할 때 일했다. 메소드가 코드에있는 Post와 같을 때 엔드 포인트를 찾을 수 없습니다라는 메시지가 나타납니다.

내 피들러 요청이처럼 보였다 :

여기
http://localhost/service/service1.svc/Comosite/test 

시험은 복합 매개 변수로 전송하고 XML을 반환 나는의 CompositeType를 얻을 수있다.