Asp.net-Mvc
EF Code First 不生成表
我正在開發一個 EF Code first 站點,並且我已經編寫了我的類和一個上下文類,其來源是:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Data.Entity; using MySite.SalesTool.Data.Entities; using System.Data.Entity.ModelConfiguration.Conventions; namespace MySite.SalesTool.Data { public class SalesToolEntities : DbContext { public DbSet<User> Users { get; set; } public DbSet<UserRole> UserRoles { get; set; } public DbSet<Job> Jobs { get; set; } public DbSet<JobAssigner> JobAssigners { get; set; } public DbSet<JobFile> JobFiles { get; set; } public DbSet<JobStatus> JobStatuses { get; set; } public DbSet<AssignedUser> AssignedUsers { get; set; } } }該項目建構良好,但是當我去執行該站點時,數據庫中沒有創建任何表,並且我收到一條錯誤消息,指出數據庫找不到我嘗試訪問的任何上下文對象,大概是因為程式碼首先沒有生成任何必要的表格。
有什麼想法為什麼它根本不會生成任何表格,也不會給我任何類型的錯誤資訊?
你有初始化策略嗎?
Database.SetInitializer(new DropCreateDatabaseIfModelChanges<SalesToolEntities>());從您訂閱的內容來看,這聽起來像是您自己創建了數據庫。然後你需要指定一個初始化策略,否則不會向數據庫添加表/數據,查詢數據庫會導致異常:{“指定的表不存在。
$$ sometable $$"}