正如标题所暗示的:
如何在代码优先方法中告诉 Entity Framework 4.1,我确实希望某些属性(特别是字符串类型)的长度为 256,或者 nvarchar(max),或者...
所以如果这是例如我的模型
public class Book{
public string Title { get; set; } //should be 256 chars
public string Description {get;set} //should be nvarchar(max)
}
怎么定义?
提前致谢!
请您参考如下方法:
在 EF4.1 RTW 中,SQL Server 的默认长度为 nvarchar(max),SQL CE 的默认长度为 nvarchar(4000)。要更改长度,请使用 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);