共用方式為


型別限制式 (EDM)

實體資料模型 (EDM) 允許透過其實體類型的屬性來指定限制式。限制式會限制屬性的可能值,並確認指派給屬性的值不只是正確的資料型別,而且對於應用程式的商務需求也是有效的。

Nullable 限制式

可以使用 Nullable 限制式來約束任何屬性。Nullable 限制式是最簡單的限制式種類,而且會指定此屬性的值是否可以未指派或是為 Null

實體的 Key 屬性是用來識別應用程式中型別的執行個體 (Instance)。當建立此實體時,必須要指派 Key 屬性。包含 Key 之實體的屬性上一定需要 Nullable 限制式,而且將 Nullable 限制式設定為 false 可避免執行個體化 (Instantiation) 沒有識別項的實體。

下列結構描述會在 Person 型別的屬性上指定 Nullable 限制式。EMailID 屬性可以是 Null,但是 Name 必須有指派值,否則當程式碼將此型別儲存至儲存區時,將會產生執行階段錯誤。

    <EntityType Name="Person">
        <Key>
            <PropertyRef Name="Name" />
        </Key>
        <Property Name="Name" Type="String" Nullable="false" />
        <Property Name="EmailID" Type="String" Nullable="false" />
        <Property Name="Address" Type="AddressType" Nullable="true" />
        <Property Name="PhoneNumber" Type="String" />
    </EntityType>

如同在 SQL Server 中一樣,Null 屬性的預設值為 true。此範例中的 Address 屬性和 PhoneNumber 屬性都可以是未指派。

預設屬性

如果建立實體的執行個體時未提供屬性 (Property) 的值,Default 屬性 (Attribute) 會指定屬性 (Property) 的值。在下列範例中,如果在具現化新的 Customer 時未提供其他值,Locale 屬性會預設為 NW Region

    <EntityType Name="Customer">
        <Key>
            <PropertyRef Name="CustomerId" />
        </Key>
        <Property Name="CustomerId" Type="String" Nullable="false" />
        <Property Name="Name" Type="String" Nullable="false" />
        <Property Name="Locale" Type="String" Default="NW Region"/>
        <!--Other Properties-->
    </EntityType>

另請參閱

概念

GetterAccess 和 SetterAccess 屬性 (CSDL)
簡單型別 (EDM)