Как использовать guid в качестве столбца первичного ключа (идентификатора) в структуре сущностей 5 со значением по умолчанию newid()?

я использую Entity Framework 5.0 от «Model First». В версии 4.x есть ошибка: дизайнер не может обрабатывать первичный идентификатор столбца с идентификатором и значением по умолчанию: "newid()" (источник: http://leedumond.com/blog/using-a-guid-as-an-entitykey-in-entity-framework -4/)

Неужели все еще нельзя использовать это в EF5? В чем проблема преобразовать С# guid в sql "uniqueid"?


person matt.m.atze    schedule 11.09.2012    source источник


Ответы (1)


Это сработало для меня, сначала работающего с базой данных, но может помочь вам после того, как вы создадите свою базу данных -

Вы можете обновить таблицу и установить значение по умолчанию newid() с помощью Server Management Studio (не через EF).

Затем в модели EF обновите StoreGeneratedPattern с none на Identity.

Редактирование 2013 г.: для полноты картины в EF 5.0 Codefirst можно указать следующую аннотацию данных:

[Key]
[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
public Guid TableIdColumn { get; set; }
person RYFN    schedule 16.10.2012