2014-06-09 57 views

回答

1

COM已經有一個完善的方式來指示客戶端代碼失敗。通過使用標準實踐,您可以最大限度地提高客戶端代碼的正確性。最重要的是,CLR實現了這個功能,所以你不必做任何特殊的事情。

你指出的失敗就像你通常在.NET程序中做的那樣:你拋出異常。您希望在.NET Framework中支持現有的異常類型,它們都具有唯一的HResult屬性值,客戶端代碼將獲取該屬性值,以便知道方法調用失敗。 CLR爲[ComVisible]類型實現ISupportsErrorInfo和IErrorInfo接口,這就是客戶端代碼如何獲取Exception.Message屬性的值。大多數語言運行時自動執行此操作,使用自己的異常處理風格重新拋出異常。

你當然可以做一些自定義的事情,迫使客戶端代碼實現一個JSON解析器不應該是你的第一選擇。

+0

Thanks Hans Passant =) –

相關問題