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 {}