我嘗試了所有現有問題中提到的解決方案,但它們都不適用於我。當我運行我的應用程序(運行時沒有錯誤),並檢查SQLExpress數據庫(通過SQL Management Studio)時,我可以看到沒有從我的Code First類生成的表。無法獲得EF代碼首先在SQL Server Express 2012上工作
這裏是我的連接字符串:
<add name="BSContext" connectionString="Data Source=.\SQLEXPRESS; Integrated Security=SSPI; Initial Catalog=BSDomain; MultipleActiveResultSets=True" providerName="System.Data.SqlClient" />
我在Win 8 Pro的64倍,並且使用VS 2012與SQL Express的2012年沿着這是我的BSContext代碼:
public class BSContext : DbContext
{
public DbSet<Event> Events { get; set; }
public DbSet<Location> Locations { get; set; }
public DbSet<Author> Authors { get; set; }
}
而且在我的application_start()我有以下內容:
Database.SetInitializer<BSContext>(new EventInitializer());
而且EventInitializer的代碼如下s:
public class EventInitializer : DropCreateDatabaseAlways<BSContext>
{
protected override void Seed(BSContext context)
{
// Seed Code
}
}
仍然不起作用。
你的派生DbContext如何命名?它必須和你的連接名稱BSContext相同 - 或者確保你沒有在構造函數中定義連接/名稱(比如':base(「...」)'),這很可能是連接問題。你的EF/CF使用了一個,你認爲這是另一回事。 – NSGaga
擴展問題和更多信息 – Ciwan
你的.config?提供程序,工廠,數據庫初始化程序等有什麼其他內容 – NSGaga