2011-12-08 4 views
0

우리의 도메인 서비스에서 WCF-RIA 서비스 방법에 따라 호출하는 방법 :있는 '호출'동작을 다음과 같은 자바 스크립트

public void SaveImportedUrl(CRIAImportedUrl i_importedUrl) 

public class CRIAImportedUrl 
{ 
    [Key] 
    public Uri Url { get; set; } 
    public string Title { get; set; } 
    public string Description { get; set; } 

    // ... more properities 
} 

I합니다 (JSON 엔드 포인트 이상) 자바 스크립트 클라이언트에서이 전화를합니다. Silverlight 클라이언트에서 (피 들러에서) 전화를 보면 'SubmitChanges'URL로 POST해야한다는 것을 알 수 있습니다. 하지만 실버 라이트 클라이언트는 바이너리 엔드 포인트를 사용하기 때문에 POST 메시지의 내용이 어떻게 보이는지 알 수 없습니다.

누구든지이 작업을 수행하는 방법을 알고 있습니까? 또는 Silverlight 코드를 리버스 엔지니어링 할 수 있습니까? 소스 코드를 가져 오거나 바이너리 인코딩 된 POST 메시지 내용을 디코딩하면됩니까?

(성공적으로 'CRUD'작업을 호출 할 수 있습니다. (http://stackoverflow.com/questions/8179504/how-to-insert-entity-over-wcf-ria-services-json-endpoint) "ErrorMessage가 '500'호출 '작업은

편집 ---

오류 메시지가 폰 서버, wenn 데르 POST 메시지 내용 =

{ 
"Url":"http://www.bbc.co.uk/", 
"Title":"a title", 
"Description":"adesc" 
} 

{"ErrorCode가 ") 여전히 미스테리입니다 : "개체 참조가 개체의 인스턴스로 설정되지 않았습니다.", "IsDomainException": false, "StackTrace": "at System.ServiceModel.Doma inServices.Hosting.ChangeSetProcessor.CreateChangeSet은 (는 IEnumerable 1 changeSetEntries)\u000d\u000a at System.ServiceModel.DomainServices.Hosting.ChangeSetProcessor.Process(DomainService domainService, IEnumerable 1 changeSetEntries)는 \ u000d \ u000a System.ServiceModel.DomainServices.Hosting.SubmitOperationBehavior.SubmitOperationInvoker.InvokeCore에서 (오브젝트 인스턴스이 Object []은 입력이 Object [] & 출력) "}

+1

: HTTP를 : //archive.msdn.microsoft.com/wcfbinaryinspector – TheNextman

+0

매우 도움이됩니다 - 감사합니다. 나는 이것을 코멘트로 추가하기보다는 대답으로 써야한다고 생각합니다. – GarethOwen

답변

0

: WCF Binary Inspector 당신은 SL 클라이언트에서 전송 된 바이너리 메시지를 검사하게됩니다 피들러위한 플러그인이있다

+0

감사합니다. 도움이됩니다. 또한 Silverlight 포럼이 WCF-RIA 질문을위한 더 나은 리소스 인 것으로 나타났습니다. – GarethOwen

0

WCF 엔드 포인트 구성은 어떻게됩니까? 나는 그것이 TcpBinary를 사용하고 있다고 추측하고있다. 따라서 SOAP 처리 메시지가 많아서 '역 공학'할 수 없을 것이다 ...

새로운 WCF 엔드 포인트를 추가하는 것이 좋습니다. JSON의 경우 똑같은 메소드를 호출 할 수 있지만 별도의 끝점에서 다른 클라이언트로부터 호출 할 수 있습니다.

당신은 SL 클라이언트에서 전송 된 바이너리 메시지를 검사하게됩니다 피들러위한 플러그인이있다
+0

감사합니다 Leon - 우리는 이미 다른 CRUD 작업을 위해 성공적으로 호출 할 수있는 JSON 끝점을 가지고 있습니다. 하지만이 유형의 '호출'작업은 아닙니다. – GarethOwen

+0

"Invoke"작업으로 POST 할 때 WCF 추적 로그가 어떻게 표시됩니까? – Leon

+0

답변에 오류 메시지를 추가했습니다. – GarethOwen

관련 문제