2009-08-12 58 views
0

我有一個biztalk(2006 R2)地圖,它使用一個類來提供一些我們無法通過現有functoid整齊地實現的自定義邏輯。Biztalk中的腳本異常映射

當一個異常被從這個類的異常細節,不幸丟失(至少據我可以看到)的方法的一個拋出,變換形狀簡單地拋出異常指示'Function 'ScriptNS-:DoFoo()' has failed'

I」自從得出的結論是,在地圖中使用腳本functoids是災難的祕訣,但那是另一個討論。我的問題是有沒有一種機制允許異常詳細信息傳遞給父業務流程?

+0

我不記得這個問題的上下文,所以我不知道如果我解決了如何得到異常的細節或只是解決了特定的異常。但我想我會添加這個,如果它可以幫助別人,我知道在biztalk中,許多從編排組件拋出的異常被「包裝」爲您收到的實際異常消息的InnerException。 – TygerKrash 2010-04-15 15:42:10

回答

1

嘗試使用'System.Diagnostics.Trace'類並在與其進度相關的方法內輸出內容。從輸出參數開始,因爲它們可能與您的方法所期望的不同。

簡單的例子:

System.Diagnostics.Trace.WriteLine("HelperClass XX - Method YY - This was passed from the map : " + inputParamOne); 

使用明確的命名標準可以更容易地運行時比你的東西多臺機器上過濾器內免費工具DebugView中,更是如此。我經常留下這樣的追蹤,因爲它後來經常證明是非常寶貴的。如果沒有監聽器連接,開銷通常可以忽略。

如果您在地圖部署一個BizTalk開發機器,你可以通過執行以下步驟調試運行:

  • 將斷點的方法
  • 選擇「調試 - 附加到進程」
  • 附加到HostInstance進程 (BTSNTSvc.exe如果是32位)處理 您的對應端口或 協調運行映射。