2009-10-15 3 views
0

내가 하나 OperationContact 입력에 문자열 배열을 소비해야 WCF 서비스를 짓고 있어요.WCF 서비스 - OperationContract를 - 문자열 배열

POST 요청은 $ .toJSON 기능을 jQuery를에서 구축하고 내가 계약을 만들

{"user":"77cae724-d5b3-412d-9499-2cfc175bf66f", 
"data1":["ba3be5f2-c65d-4c21-86b1-829cad246746","604c53b1-1e24-42f7-8aba-93314eb0878e"], 
"data2":"d15c3cf6-02c8-42f2-9753-ab2f5e10b21e", 
"data3":["6449b58c-272c-4c98-a2fd-bd47ca248bb3","595fbefd-411e-40b1-afa1-f1f96495a8c1"]} 

처럼 다음과 같습니다

[OperationContract] 
bool function1(string userGuid, List<string> userOrganization, List<string> userCostUnit, List<string> userGroup); 

[OperationContract] 
bool function1(string userGuid, string[] userOrganization, string[] userCostUnit, string[] userGroup); 

그러나 아무것도에 보인다 작업. 난 그냥 500 내부 서버 오류가 발생합니다. 입력 데이터 (json 데이터)에 문제가 있습니까? 당신이 감속을 작동하는 방법을 말해 주시겠습니까

는에이 일을하게처럼 보인다.

+0

500 응답을 야기하는 오류에 대한 자세한 정보는 웹 서버 로그를 확인하십시오. –

답변

2

당신의 JSON과 일치하지 않습니다 계약 (예를 들어, JSON 멤버는 "사용자"라고하지만 당신은 계약서에 "userGuid"를 사용).

당신은 예를 들어, 수행 할 수 있습니다

[WebInvoke의 (RequestFormat = WebMessageFormat.Json)] [OperationContract를] 부울 기능 1 (GUID 사용자, 목록 데이터 1, 가이 데이터 2, 목록 데이터 3);

는 또한이 작품을 만들기 위해 WebInvoke.BodyStyle 함께 플레이 할 수도 있습니다 - 나는 「랩」한다고 생각합니다.

+0

나는이 대답에서 serializeObject 기능을 구현 http://stackoverflow.com/questions/1184624/serialize-form-to-json-with-jquery 하지만 실제로는 여러 항목을 선택 작동하지 않습니다 :( – AnzeR

관련 문제