SQLite CreateDatabase不支持错误

meh*_*rif 3 sqlite system.data.sqlite ef-code-first entity-framework-4.1 asp.net-mvc-3

我正在使用Entite Framework 4.2 CF和SQLite,但是当我尝试启动应用程序时,我得到"提供程序不支持CreateDatabase"错误.这是我的模型映射:

protected override void OnModelCreating(DbModelBuilder modelBuilder)
        {
            #region NewsMapping

            modelBuilder.Entity<News>().ToTable("news");
            modelBuilder.Entity<News>().HasKey(x => x.Id).Property(x => x.Id).HasColumnName("ID").HasColumnOrder(0);
            modelBuilder.Entity<News>().Property(x => x.Status).HasColumnName("STATUS");
            modelBuilder.Entity<News>().Property(x => x.NewsTitle).HasColumnName("NEWS_TITLE");
            modelBuilder.Entity<News>().Property(x => x.Content).HasColumnName("CONTENT_1");
            modelBuilder.Entity<News>().Property(x => x.IsImportant).HasColumnName("IS_IMPORTANT");
            modelBuilder.Entity<News>().Property(x => x.OrderNumber).HasColumnName("ORDER_NUMBER");
            modelBuilder.Entity<News>().Property(x => x.CreateDate).HasColumnName("CREATE_DATE");
            #endregion

            base.OnModelCreating(modelBuilder);

        }
Run Code Online (Sandbox Code Playgroud)

这段代码有什么问题?

谢谢

Lad*_*nka 8

代码没有错.错误确切地说明了发生了什么.您的SQLite(System.Data.SQLite)的EF提供程序不提供数据库创建,因此您必须在启动应用程序之前手动创建数据库和所有表.


AJ *_*wal 5

我收到此错误是EF 6.1.3因为System.Data.Sqlite 1.0.103我没有在web.config文件中正确指定数据库文件的位置。

为了解决这个问题,我将数据库文件移至App_Data并将连接字符串更改为connectionString="data source=|DataDirectory|databaseName;Version=3;"