Первый код CTP4: таблица без первичного ключа? - PullRequest
3 голосов
/ 01 ноября 2010

С Entity Framework и Code First можно ли позволить ему создавать и использовать таблицу без первичных ключей?Я не могу заставить эту настройку работать:

public class Report
{
    public virtual int ReportId
    public virtual ICollection<ReportChanges> ReportChanges
}

public class ReportChanges
{
    public virtual Report Report
    public virtual string EditorName
    public virtual DateTime Changed
}

Обратите внимание, что я исключил назначение первичного ключа в ReportChanges.Но с этой настройкой я получаю: " Невозможно определить ключ для типа сущности 'ReportChanges '".

Либо я что-то упустил, либо Code First не поддерживает таблицы безпервичные ключи.Что правильно?Спасибо.

Ответы [ 2 ]

1 голос
/ 02 сентября 2013

EF нужен способ отслеживать свои внутренние изменения.Вот пример кода, чтобы помочь другим, кто уже гуглил:

1 голос
/ 01 ноября 2010

EF может поддерживать таблицу без PI, если есть способ уникальной идентификации строки, , но он не может вывести уникальный идентификатор без правильного PK. Другими словами, лгите EF и говорите, что есть PK, скажем, на Report и Changed.

...