내 SL4 응용 프로그램에서 svc.SubmitAsync() 서비스 호출이 있습니다. 이것은 비동기 호출이기 때문에 메소드가 실행되면 내 코드가 다음 행으로 넘어갑니다. 사용자가 올바른 사용자 이름과 암호를 입력하는 한 괜찮습니다. 그렇지 않으면 EndSubmit()이 예외를 throw합니다. EndSubmit()은 자동 생성 Silverlight 코드의 일부인 References.cs에 있습니다.Silverlight에서 비동기 호출 중에 어떻게 오류를 처리합니까?
나는 try-catch에서 svc.SubmitAsync()를 래핑하려고 시도했으나 이것은 비동기 호출이며 예외가 발생하기 전에 try-catch 블록이 완료된다.
어떻게이 오류를 잡을 수 있습니까?
감사합니다.
업데이트 1
public void SubmitTweetAsync(TestSilverlightApp.svc.Tweet tweet, object userState) {
if ((this.onBeginSubmitTweetDelegate == null)) {
this.onBeginSubmitTweetDelegate = new BeginOperationDelegate(this.OnBeginSubmitTweet);
}
if ((this.onEndSubmitTweetDelegate == null)) {
this.onEndSubmitTweetDelegate = new EndOperationDelegate(this.OnEndSubmitTweet);
}
if ((this.onSubmitTweetCompletedDelegate == null)) {
this.onSubmitTweetCompletedDelegate = new System.Threading.SendOrPostCallback(this.OnSubmitTweetCompleted);
}
base.InvokeAsync(this.onBeginSubmitTweetDelegate, new object[] {
tweet}, this.onEndSubmitTweetDelegate, this.onSubmitTweetCompletedDelegate, userState);
}
업데이트 2 - 이것은 WCF 서비스입니다.
SubmitAsync 코드를 게시 할 수 있습니까? – dtb
어떤 유형의 서비스입니까? WCF? –
언제든지 BeginSubmit 메서드가 있습니까? – dtb