2011-11-28 62 views
2

有沒有人知道如何進入由(在我的情況下)Spring的AOP機制管理的類的目標方法?調試和進入動態代理

如果我正在瀏覽我的代碼並獲得例如orderDao.FindOrder(orderId),並嘗試進入該方法,我到達代理類本身,而不是我的OrderDAO。

我明白爲什麼會發生,當然。不過,我確信我能夠直接進入我的方法(即調試器繞過所有的AOP的東西,直接去我的代碼。)

但它停止工作,我不知道我可以做些什麼來阻止它做這件事。在VisualStudio(2010)的設置可能在某處?

我沒有選中,然後在調試器中檢查'只是我的代碼'選項,看看是否有幫助,但得到相同的結果。

感謝

+0

也許你可以讓你的問題比Spring.NET更廣泛一些。 Spring.NET AOP使用動態代理,它也用於其他堆棧(例如NHibernate,Castle,LinFu)。因此,制定更一般的問題以使其適用於此也會吸引更多的觀衆。 – Marijn

+0

乾杯,好點,我現在已經做到了。 – Richard

+1

查看輸出窗口。它是否告訴你它故意跳過你的方法? –

回答

1

我在評論這個回答,只是所以如果很明顯別人正在尋找一個解決方案...

你可以告訴VS只包括你自己的DLL時,在工具,選項,調試,符號調試。然後通過在'指定模塊'部分中添加每個DLL來設置一個包含/排除過濾器。

此外,在工具,選項,調試,有一個複選框稱爲「只是我的代碼」。這可能值得切換(不確定),但我認爲它是默認啓用的,所以你可能不需要打擾這一點。