EF4 Code First& SQLCE 4.0 - 生成DB时出现异常

时间:2011-08-29 06:38:12

标签: asp.net entity-framework-4 sql-server-ce

我首先使用EF4 4.1代码并尝试使用SQLCE作为数据源。

指向SQL Server 2008实例时,一切都很完美,但是当我更改为SQLCE时,我得到以下异常:

  

不支持MaxLength大于4000的字符串列。

这是它抱怨的属性,因为你可以看到它的长度被设置为1024个字符所以我很难过为什么它抱怨4000?

[Required]
[DataType(DataType.Text), RegularExpression("http://www.*"), StringLength(1024)]
[Display(Name = "Page URL (http://www.)")]
public string Url { get; set; }

这是我的连接字符串:

<add name="DataContext" connectionString="Data Source=|DataDirectory|db.sdf" providerName="System.Data.SqlServerCe.4.0" />

这是来自global.asax的数据库初始化程序:

Database.DefaultConnectionFactory = new SqlCeConnectionFactory("System.Data.SqlServerCe.4.0");
Database.SetInitializer(new DropCreateDatabaseIfModelChanges<DataContext>());

我缺少什么想法?

谢谢:)

1 个答案:

答案 0 :(得分:0)

将DataType更改为NVarchar(来自文本)