Entity Framework 4.1 код первый подход: как определить длину свойств - PullRequest
24 голосов
/ 15 апреля 2011

Как видно из названия:

как можно сказать Entity Framework 4.1 при первом подходе к коду, что я хочу, чтобы некоторые свойства (в частности, типа string) имели длину 256, или nvarchar (max), или ...

Так что, если это, например, моя модель

public class Book{
   public string Title { get; set; } //should be 256 chars
   public string Description {get;set} //should be nvarchar(max)
}

как это можно определить?

Заранее спасибо!

Ответы [ 2 ]

43 голосов
/ 15 апреля 2011

В EF4.1 RTW длина по умолчанию равна nvarchar (макс.) Для SQL Server и nvarchar (4000) для SQL CE.Чтобы изменить длину, используйте либо StringLength, либо MaxLength аннотации, либо отображение по беглому потоку HasMaxLength:

[StringLength(256)]
public string Title { get; set; }

или

[MaxLength(256)]
public string Title { get; set; }

или

modelBuilder.Entity<Book>()
            .Property(p => p.Title)
            .HasMaxLength(256);
3 голосов
/ 15 апреля 2011

Как указано в моем комментарии, это просто.
Просто используйте [StringLength(1000)] или [MaxLength] из DataAnnotation.

...