Я столкнулся с моим первым разочарованием с Entity Framework 4. Оказывается, что SQL CE при использовании с EF4, does not support autogenerated primary keys. Я получаю System.Data.UpdateException из OnjectContext.SaveChanges() с этим сообщением:Генерирование ключей сущностей
Серверные ключи и генерируемые сервером значения не поддерживаются SQL Server Compact.
Итак, теперь мне нужно вручную генерировать ключи для моих объектов. Предполагая, что я хочу использовать автоматические инкрементные целые ключи, каков наилучший способ генерации и отслеживания ключей при использовании Entity Framework? Спасибо за вашу помощь.
Это замечательно - спасибо! –
Хороший ответ, но, к сожалению, код на связанной странице работает только для нефильтрованных наборов сущностей, поскольку метод расширения возвращает максимальный id в наборе сущностей. Итак, в конечном итоге я использовал GUID как ключ сущности. Я создал частичный класс для каждого объекта с этим кодом конструктора: this.ID = Guid.NewGuid() –