在類別設計工具中建立可為 Null 的型別
特定實值型別不一定具有 (或需要) 定義的值。 這種情況在資料庫中為常見做法,其中的部分欄位不會指派任何值。 比方說,您可能將 null 值指派給資料庫欄位,以表示該欄位尚未指派值。
「可為 Null 的型別」是一種延伸的實值型別,其可接受該類型的一般範圍值,也可接受 null 值。 例如,您可將 -2147483648 到 2147483647 的任何值或 null 值指派給一個可為 Null 的 Int32
(也表示為 Nullable<Int32>)。 您可將 True
、False
或 null 值 (完全沒有值) 指派給一個 Nullable<bool>。
可為 Null 的型別是 Nullable<T> 結構的執行個體。 每個可為 Null 的型別,其執行個體皆有 HasValue
和 Value
這兩個公用唯讀屬性:
HasValue
是bool
類型,並指出變數是否包含定義的值。True
表示變數包含非 null 值。 您可以使用if (x.HasValue)
或if (y != null)
這類陳述式來測試是否有定義的值。Value
是與基礎類型相同的類型。 如果HasValue
為True
,則Value
包含有意義的值。 如果HasValue
為False
,則存取Value
時會擲回無效作業例外狀況。
當您將變數宣告為可為 Null 的型別時,該變數預設為除了基礎實值型別的預設值之外,不具有任何已定義的值 (HasValue
為 False
)。
[類別設計工具] 針對可為 Null 型別的顯示方式,完全與顯示其基礎類型一樣。
如需 C# 可為 Null 型別的詳細資訊,請參閱可為 Null 的型別。 如需 Visual Basic 可為 Null 型別的詳細資訊,請參閱可為 Null 的實值類型。
注意
在本文的某些 Visual Studio 使用者介面項目中,您的電腦可能會顯示不同的名稱或位置。 您使用的可能是不同版本的 Visual Studio 或不同的環境設定。 如需詳細資訊,請參閱將 IDE 個人化。
若要使用類別設計工具,新增可為 Null 的型別
在類別圖表中,展開現有類別,或建立新的類別。
若要將類別新增至專案,請按一下 [類別圖表] 功能表上的 [新增]> [新增類別]。
若要展開類別圖形,請按一下 [類別圖表] 功能表上的 [展開]。
選取類別圖形。 在 [類別圖表] 功能表上,按一下 [新增]> [欄位]。 接著,在類別圖形和 [類別細節] 視窗中,即會出現一個新欄位 (預設名稱為 [欄位])。
在 [類別細節] 視窗 (或類別圖形本身) 的 [名稱] 資料行中,將新欄位的名稱變更為有效且有意義的名稱。
在 [類別細節] 視窗的 [類型] 資料行中,藉由指定下列項目,將類型宣告為可為 Null 的型別:
int?
(Visual C#)Nullable(Of Integer)
(Visual Basic)
若要使用程式碼編輯器,新增可為 Null 的型別
將類別加入至專案。 在方案總管中,選取專案節點,然後按一下 [專案] 功能表上的 [新增類別]。
若為新類別,可在 .cs 或 .vb 檔案中,將新類別中的一或多個可為 Null 的型別新增至類別宣告。
從 [類別檢視] 中,將新類別圖示拖曳至 [類別設計工具] 的設計介面。 類別圖表中隨即出現類別圖形。
展開類別圖形的詳細資料,然後將滑鼠指標移至類別成員上方。 工具提示會顯示每個成員的宣告。
以滑鼠右鍵按一下類別圖形,然後按一下 [類別細節]。 您可以在 [類別細節] 視窗中檢視或修改新類型的屬性。