天天看點

WCF RIA調試

1.用戶端對于伺服器端傳回錯誤顯示

l  LoadOperation的錯誤處理:

用戶端DomainContext的Load函數裝載查詢,并可以激發回調函數,在回調函數中對傳回的錯誤進行處理,并調用MarkErrorAsHandled()表示錯誤已處理,無需throw an error

LoadOperation op = dbcxt.Load(dbcxt.GetSHJLYSZSJTableQuery(sql.ToString()), loadOperation =>

      {

        if (loadOperation.HasError)

        {

          MessageBox.Show(loadOperation.Error.Message);

          loadOperation.MarkErrorAsHandled();//表示錯誤已處理,無需throw an error

        }

        else{無錯誤處理…}

      }, null);

2.伺服器端調試

      大部分時候,靠LoadOperation的Error.Message不能顯示真正的出錯原因,需要在背景設定日志監控。

伺服器段調試分為兩步:

2.1.設定開啟日志

使用WCFService Configuration Editor編輯Silverlight Application項目的Silverlight運作的Container(asp.NET)中的配置檔案:WEB.config

WCF RIA調試

u  打開Diagnostics中的:MessageLogging和Tracing,設定為ON

u  打開Diagnosticsà Message Logging中

WCF RIA調試

l  LogMessagesAtServiceLevel設為true

l  LogMessagesAtTransportLevel設為false;

WCF RIA調試

2.2.使用工具檢視

運作後日志資訊會放在項目與WEB.config相同的目錄下:Web_tracelog.svclog

使用:C:\Program Files\MicrosoftSDKs\Windows\v6.0A\Bin\SvcTraceViewer.exe工具可以檢視

2.3關掉Customerrors

将Web.config中的<customErrors mode="Off"/> ,将會給Silverlight提供更多的資訊,但在正式版中會暴露系統的大量資訊,由此正式釋出時,必須=ON;

繼續閱讀