CA1017:組件必須標記 ComVisibleAttribute

屬性
規則識別碼 CA1017
標題 組件必須標記 ComVisibleAttribute
類別 設計
修正程式是中斷或非中斷 不中斷
預設在 .NET 8 中啟用 No

原因

元件未 System.Runtime.InteropServices.ComVisibleAttribute 套用屬性。

檔案描述

屬性 ComVisibleAttribute 會決定 COM 用戶端如何存取 Managed 程式代碼。 良好的設計會要求組件明確表示 COM 的可視性。 您可以為整個元件設定 COM 可見性,然後覆寫個別類型和類型成員。 如果屬性不存在,COM 用戶端會顯示元件的內容。

如何修正違規

若要修正此規則的違規,請將 屬性新增至元件。 如果您不希望 COM 用戶端看到元件,請套用 屬性並將其值設定為 false

隱藏警告的時機

請勿隱藏此規則的警告。 如果您要顯示元件,請套用 屬性並將其值設定為 true

範例

下列範例顯示已套用 屬性的 ComVisibleAttribute 元件,以防止 COM 用戶端看到該元件。

<Assembly: System.Runtime.InteropServices.ComVisible(False)>
Namespace DesignLibrary
End Namespace
[assembly: System.Runtime.InteropServices.ComVisible(false)]
namespace DesignLibrary {}

另請參閱