Ответ 1
DatabaseGeneratedAttribute
находится в
System.ComponentModel.DataAnnotations.Schema
атрибут пространства имен в .NET 4.5
Я пытался перенести проект MVC 3 на MVC 4, но когда захотел переместить эту модель:
public class Link
{
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public Guid ID { get; set; }
[DisplayName("Shorted URL")]
public string SURL { get; set; }
[DisplayName("General Link")]
public string OriginalURL { get; set; }
[DisplayName("Click Count")]
public int ClickCount { get; set; }
}
public class LinkDBContext : DbContext
{
public DbSet<Link> Links { get; set; }
}
Я получил ошибку с атрибутом [System.ComponentModel.DataAnnotations.(DatabaseGeneratedOption.Identity)]
. Я не знаю, в чем проблема. Кто-нибудь знает?!?
Обновление
Это ошибки:
Тип или имя пространства имен 'DatabaseGeneratedAttribute' не может быть (вам не хватает директивы использования или ссылки на сборку?)
Тип или имя пространства имен DatabaseGenerated не удалось найти ( у вас отсутствует директива using или ссылка на сборку?)
DatabaseGeneratedAttribute
находится в
System.ComponentModel.DataAnnotations.Schema
атрибут пространства имен в .NET 4.5
Если вы хотите использовать этот атрибут в .net 4, вы можете использовать предварительную версию EntityFramework 6 (или даже Nightly Builds), чтобы сделать это, в окне Manage NuGet Pakages
, из раскрывающегося списка в верхней части окна, выберите Include Prerelease
.
Чтобы обновить до Nightly Builds, в Pakage Manager Settings
добавить этот источник пакета:
http://www.myget.org/F/aspnetwebstacknightly/
Для полного руководства см. EF на GitHub.
Вам нужно - в некоторых случаях - изменить структуру с 4.5 или меньше до 4.5.1, а затем установить Entity Framework 6 + и найти ее