2012-05-15 5 views
0

Как я могу ограничить Entity Framework, чтобы читать отношение внешнего ключа от табличных автомобилей к транспортному средству (например) как 0..1 -> 1 вместо * -> 1?Ограничение емкости Framework Entity Framework

У меня есть таблицы

create TABLE [dbo].[Vehicles](
    [Id] [int] IDENTITY(1,1) NOT NULL primary key, 
    <rest of the columns> 
) 

create TABLE [dbo].[Cars](
    [Id] [int] NOT NULL, 
    <rest of the columns> 
) 

и внешний ключ:

alter table [Cars] add foreign key(id) references [Vehicles](id) 

при создании модели из БД, она создается как * -> 1 об изменении я косяк:

enter image description here

Я знаю, что я вручную меняю ассоциацию betw een эти два объекта, но это не имеет значения, поскольку оно не меняет ограничение

Мне нужно сделать это, чтобы установить свойство baseType Cars в Vehicle для реализации наследования.

В настоящее время я получаю эту ошибку:

Multiplicity is not valid in Role 'BoatsTPT' in relationship 'FK__BoatsTPT__Id__117F9D94'. Because the Dependent Role refers to the key properties, the upper bound of the multiplicity of the Dependent Role must be 1.

+0

Возможно, у вас есть ПК автомобилей, предназначенных для FK для ПК на столе транспортного средства, и оба они не могут быть NULL. Если вы сделали автомобиль [Id] отдельной колонкой на таблице Cars, она должна работать. – Qpirate

ответ

1

Вы должны сначала сделать Id колонку в вашей Cars таблице первичный ключ в противном случае это не один-к-одному отношение.

+0

отлично, я пропустил это. благодаря – Diego

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