CLSCompliantAttribute 類別
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
表示程式項目是否符合 Common Language Specification (CLS) 標準。 此類別無法獲得繼承。
public ref class CLSCompliantAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.All, AllowMultiple=false, Inherited=true)]
public sealed class CLSCompliantAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.All, AllowMultiple=false, Inherited=true)]
[System.Serializable]
public sealed class CLSCompliantAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.All, AllowMultiple=false, Inherited=true)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class CLSCompliantAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.All, AllowMultiple=false, Inherited=true)>]
type CLSCompliantAttribute = class
inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.All, AllowMultiple=false, Inherited=true)>]
[<System.Serializable>]
type CLSCompliantAttribute = class
inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.All, AllowMultiple=false, Inherited=true)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type CLSCompliantAttribute = class
inherit Attribute
Public NotInheritable Class CLSCompliantAttribute
Inherits Attribute
- 繼承
- 屬性
下列範例會將 CLSCompliantAttribute 套用至整個元件。
using System;
[assembly: CLSCompliant(true)]
下列宣告會產生 CLS 合規性警告,因為 CLS 中未指定類型 UInt32
。
public int SetValue(UInt32 value);
如果宣告標示 CLSCompliantAttribute 為 ,則不會產生編譯器警告或錯誤。
[CLSCompliant(false)]
public int SetValue(UInt32 value);
屬性 CLSCompliantAttribute 是用來指出特定程式專案是否符合 Common Language Specification (CLS) ,這會定義以 .NET 為目標的任何語言都必須支援的功能。 CLS 合規性主要是針對想要確保其程式庫可透過以 .NET 為目標之任何語言存取的程式庫開發人員所關注。 如需詳細資訊,請參閱 語言獨立和Language-Independent元件。
您可以將 屬性套用 CLSCompliantAttribute 至下列程式專案:assembly、module、class、struct、enum、建構函式、方法、屬性、欄位、事件、介面、委派、參數和傳回值。 不過,CLS 合規性的概念只對元件、模組、類型和類型的成員有意義,而不是成員簽章的一部分。 因此,套用至參數或傳回值程式專案時, CLSCompliantAttribute 會忽略 。
CLSCompliantAttribute如果沒有套用至程式專案,則預設為:
元件不符合 CLS 標準。
只有當其封入類型或元件符合 CLS 規範時,此類型才符合 CLS 標準。
只有在類型符合 CLS 規範時,類型的成員才符合 CLS 標準。
如果元件標示為符合 CLS 標準,則不符合 CLS 規範之元件中的任何公開類型都必須使用 false
引數來標示 CLSCompliantAttribute 。 同樣地,如果類別標示為符合 CLS 規範,您必須個別標示不符合 CLS 規範的所有成員。 所有不符合規範的成員都必須提供對應的 CLS 相容替代方案。
套用至元件或模組的屬性必須在 Visual Basic) 子句中的 C# using
(Imports
和程式碼之前發生。
如需使用屬性的詳細資訊,請參閱 屬性。
注意
目前的 Microsoft Visual Basic 編譯器刻意不會產生 CLS 合規性警告,不過,未來的編譯器版本將會發出該警告。
CLSCompliant |
使用布林值初始化 CLSCompliantAttribute 類別的執行個體,該布林值會指出指定的程式項目是否符合 CLS 標準。 |
Is |
取得布林值,表示指定程式項目是否符合 CLS 標準。 |
Type |
在衍生類別中實作時,取得這個 Attribute 的唯一識別碼。 (繼承來源 Attribute) |
Equals(Object) |
傳回值,這個值指出此執行個體是否與指定的物件相等。 (繼承來源 Attribute) |
Get |
傳回這個執行個體的雜湊碼。 (繼承來源 Attribute) |
Get |
取得目前執行個體的 Type。 (繼承來源 Object) |
Is |
在衍生類別中覆寫時,表示這個執行個體的值是衍生類別的預設值。 (繼承來源 Attribute) |
Match(Object) |
在衍生類別中覆寫時,會傳回值,表示這個執行個體是否等於指定物件。 (繼承來源 Attribute) |
Memberwise |
建立目前 Object 的淺層複製。 (繼承來源 Object) |
To |
傳回代表目前物件的字串。 (繼承來源 Object) |
_Attribute. |
將一組名稱對應至一組對應的分派識別項 (Dispatch Identifier)。 (繼承來源 Attribute) |
_Attribute. |
擷取物件的類型資訊,可以用來取得介面的類型資訊。 (繼承來源 Attribute) |
_Attribute. |
擷取物件提供的類型資訊介面數目 (0 或 1)。 (繼承來源 Attribute) |
_Attribute. |
提供物件所公開的屬性和方法的存取權。 (繼承來源 Attribute) |
產品 | 版本 |
---|---|
.NET | Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7 |
.NET Framework | 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8 |
.NET Standard | 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1 |
UWP | 10.0 |