Если Microsoft что-то изменит в этом поведении, я переключусь обратно на автогенерацию.

тоящее время я работаю над приложением, которое использует Entity Framework 4.1 (сначала код) и SQL Server CE 4.0. Одна из новых вещей, которые мне действительно нравятся в SQL Server CE 4.0, - это вычисленные значения.

Но у меня есть проблемы с производительностью при импорте старых данных в мою новую систему хранилища данных (около 50000 записей). Это моя вторая реализация для этого. Первая версия использовала Entity Framework 4.0 и SQL Server CE 3.5. Но между этими реализациями существует огромная разница в производительности. Первая реализация кода занимает около часа, чтобы импортировать записи, другая реализация - всего несколько минут.

Больше всего времени проводят вSaveChanges метод. Я отследил проблему до[DatabaseGenerated(DatabaseGeneratedOption.Identity)] приписывать. Если я использую[DatabaseGenerated(DatabaseGeneratedOption.None)] и реализовать собственное поколение ключей (в качестве простого обходного пути), производительность вернулась на уровень первой реализации.

Это известная проблема? Есть ли способ решить эту проблему производительности? Или генерировать мои собственные ключи путь?

Ответы на вопрос(2)

Ваш ответ на вопрос