共用方式為


COM 可見型別應為可建立

更新:2007 年 11 月

型別名稱

ComVisibleTypesShouldBeCreatable

CheckId

CA1409

分類

Microsoft.Interoperability

中斷變更

非中斷

原因

特別標示為 COM 可見的參考型別 (Reference Type) 包含公用參數化建構函式,但不包含公用預設 (無參數) 建構函式。

規則描述

COM 用戶端無法建立沒有公用預設建構函式的型別。不過,如果有其他方式可供建立型別並傳遞至用戶端 (例如,透過方法呼叫的傳回值),則 COM 用戶端仍可存取該型別。

此規則會忽略自 System.Delegate 衍生的型別。

根據預設,COM 可以看見下列各項:組件、公用型別、公用型別中的公用執行個體 (Instance) 成員,和公用實值型別的所有成員。

如何修正違規

若要修正此規則的違規情形,請新增公用預設建構函式 (Constructor),或移除型別的 System.Runtime.InteropServices.ComVisibleAttribute

隱藏警告的時機

如果有建立及傳遞物件至 COM 用戶端的其他方式,則您可以放心地隱藏這項規則的警告。

相關規則

請以 ComVisibleAttribute 標記組件

請參閱

概念

限定互通的 .NET 型別

其他資源

與 Unmanaged 程式碼互通