2011-03-11 148 views
0

我目前正在開發一個帶有WCF服務的Silverlight應用程序。我的項目流程如下。託管Silverlight應用程序頁面與WCF服務的錯誤

Silverlight頁面 - > Service1.svc - > SQL Server 2008和背部

當用戶點擊一個按鈕,它調用一個服務引用(Service.svc)什麼我Silverligth頁面確實是。基本上,服務所做的是查詢SQL數據庫(SQL Server 2008)並將查詢返回給服務,然後服務將結果返回到將顯示的Silverlight頁面。

當我調試並從Visual Studio 2010 express運行網頁時,所有事情都按照計劃進行,即當用戶單擊按鈕時,顯示從數據庫獲取的數據。

但是,當我嘗試發佈它並在Apache服務器或IIS上運行它時,單擊按鈕時出現錯誤。即使從另一臺內部連接的PC上也可以正確顯示網頁,但按下按鈕時會出現問題。如下所示,顯示

的錯誤消息:

An exception occurred during the operation, making the result invalid. Check InnerException for exception details. 
at System.ComponentModel.AsyncCompletedEventArgs.RaiseExceptionIfNecessary() 
at SilverlightApplication11.ServiceReference1.DoWorkCompletedEventArgs.get_Result() 
at SilverlightApplication11.About.client_DoWorkCompleted(Object sender, DoWorkCompletedEventArgs e) 
at SilverlightApplication11.ServiceReference1.Service1Client.OnDoWorkCompleted(Object state) 

------------------------------ - >

我有abosolutley不知道如何解決這個問題。我對這個東西很新,請大家幫忙,我現在已經堅持了一個星期。

任何代碼片段,你們想請評論,所以我可以在這裏發佈。

在此先感謝=)

回答

0

服務呼叫你讓具有等效的事件進軍。當操作完成或失敗時,您的處理程序將被調用。傳遞給您的處理程序的事件參數將包含有關您的錯誤的信息。繼續挖掘內部異常,直到有意義。

另外,您的silverlight的App.xaml.cs有能力在引發異常時執行某些操作。有一個稱爲UnhandledException的事件可以使用。從那裏,你可以輸出關於InnerException的更多信息。有時第一個異常沒有幫助,但Exception中會有一個InnerException,它會有更多的細節。