簡體   English   中英

調試C#對象初始化程序

[英]Debugging a C# Object Initializer

有沒有人有任何調試C#對象初始化程序塊中的異常的提示? 對象初始化器語法基本上是全部或全部,這使得在LINQ查詢內部進行故障排除特別困難。 如果沒有將對象創建分解為單獨的方法,我可以做些什么來查看哪個屬性設置器拋出異常?

禁用跳過屬性設置器的選項[跳過屬性和運算符(僅限管理)]可以允許您進入屬性設置器。

否則,最好的選擇通常是將其分解並在LINQ語句之外進行調試。 您可以將初始化參數包裝到linq中的匿名類型中,並在linq語句之外構造對象以進行調試。

你有沒有設置VS在拋出異常時中斷? (默認情況下僅在未處理的異常時中斷)。 調試| 例外,並檢查“拋出”。

僅此一點可能不是您的問題的答案,但它可能有助於調試。

除此之外,您可以暫時將代碼從初始化程序塊中刪除(僅用於調試),然后如果需要,可以在代碼運行后恢復初始化程序塊。

將其從對象初始化程序塊中分離出來,您可以單獨設置每個屬性。 這樣你就可以實際進入代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM