Назначение идентификаторов сущностям с EntityFramework 4

Я хотел бы реализовать поддержку генерации идентификаторов по умолчанию для моих сущностей.

При сохранении сущности я бы хотел, чтобы EntityFramework генерировал только значение идентификатора для сущности, если это не так. уже установлен. Если идентификатор уже имеет ненулевое, ненулевое значение, я хочу, чтобы этот идентификатор объекта сохранялся при сохранении объекта в базе данных.

I ' m перенос данных из устаревшей модели данных (модель EntityFramework, созданная из старой базы данных) во вновь созданную (сначала модель) модель EntityFramework. Назовем старую модель A, а новую модель T.

Обычно я бы хотел, чтобы T-сущности получали свои идентификаторы при сохранении (все они int64) для долгосрочного использования новой модели.

В настоящее время я явно назначаю идентификаторы объекта T на основе идентификатора соответствующего объекта A, из которого я выполняю миграцию. Это позволяет легко проверить результаты миграции.

Однако, хотя я могу назначить идентификатор для объекта T тому же идентификатору, что и объект A в моей процедуре миграции, после сохранения объектов значения идентификаторов изменились.

Есть ли способ переопределить значение по умолчанию метод сохранения для всех сущностей в модели T, поэтому значение id присваивается, только если оно ' еще не заданы в сущности до ее сохранения?

Я рассмотрел здесь некоторые другие вопросы по EntityFramework / Id, но, на мой взгляд, ни один из них не задает то же самое.

Спасибо за любые рекомендации. .

9
задан John Kaster 14 April 2011 в 01:27
поделиться