2013-09-05 3 views
0
CREATE TABLE Lodging 
(
    LodgingID int PRIMARY KEY IDENTITY, 
    LodgingName nvarchar(100), 
    IsResort bit NOT NULL, 
    ResortChainOwner nvarchar(100) NOT NULL, 
     ... 
) 

Lodging Таблица DB таблицы для Lodging субъект. Я тогда реализовал Тф удел:Почему значения по умолчанию наследования TPH игнорируются?

• С Lodging сущности, являющейся основе

• Я создал новый объект Resort, который является производным от Lodging лица.

• Я переехал курортное конкретное свойство ResortChainOwner типу Resort объекта, а также установить (в SSDL) ResortChainOwner's Значение по умолчанию для «notApplicable»

IsResort колонки Lodging таблицы является дискриминационным столбцом. Если IsResort столбец содержит 0, то запись материализуется в Lodging сущности, и если столбец содержит 1, то запись материализуется в Resort сущности

Когда в следующий код SaveChanges называется, EF должен поставить (на команду вставки) по умолчанию значение для ResortChainOwner поля, но вместо этого он поставляет Null

var lodging = new Lodging(); 
... 
context.Lodgings.AddObject(lodging); 
context.SaveChanges(); 

Так как же я на вставках принудительного EF указать значение по умолчанию для столбца ResortChainOwner?

Спасибо

ответ

1

Afair значения по умолчанию из SSDL используется, когда свойство не отображается в CSDL и столбец в базе данных не обнуляемый. В этом случае без значения по умолчанию никакая вставка никогда не будет успешной.

Смежные вопросы