没有在App_Data中创建.mdf

我正在研究Visual Studio Ultimate 2013中的C#ASP.NET Web Forms项目,同时遵循这个http://goo.gl/1hK73教程(但没有完成相同的项目)。 但是,我无法在App_Date中创建.mdf文件。

我创建了我的实体类,DbContext,用一个项目在我的表中播种,向Web.config添加了一个connectionString:

 

,并在Global.asax.cs Application_Start()方法中初始化数据库:

 Database.SetInitializer(new TestingSystemDatabaseInitializer()); 

我查了一些类似的问题,但没有任何对我有用(我已经完成或只是没有工作)。

我在解决方案资源管理器中刷新了App_Data文件夹并使用了“显示所有文件”选项,但没有任何更改。

我的TestingSystemDatabaseInitializer:

 using System.Collections.Generic; using System.Data.Entity; namespace Student_Testing_System.Models { public class TestingSystemDatabaseInitializer : DropCreateDatabaseIfModelChanges { protected override void Seed(TestingSystemContext context) { var root = new Category() { CategoryId = 0, CategoryName = "root", Description = "Default category", ParentId = null, Parent = null, }; context.Categories.Add(root); } } } 

语境:

 public class TestingSystemContext : DbContext { public TestingSystemContext() : base("TestingSystem") { } public DbSet Questions { get; set; } public DbSet Categories { get; set; } public DbSet Templates { get; set; } public DbSet Tests { get; set; } public DbSet StudyGroups { get; set; } } 

此外,当通过PM中的Update-Database更新数据库时,我得到错误:
EntityType’IdentityUserLogin’没有定义键。 定义此EntityType的键。 EntityType’IdentityUserRole’没有定义键。 定义此EntityType的键。

这两个类都是EntityFramework的一部分,没有[Key]的数据注释,所以我不知道如何解决这个问题。

IdentityUserLogin:

 public class IdentityUserLogin { public IdentityUserLogin(); public virtual string LoginProvider { get; set; } public virtual string ProviderKey { get; set; } public virtual IdentityUser User { get; set; } public virtual string UserId { get; set; } } 

IdentityUserRole:

 public class IdentityUserRole { public IdentityUserRole(); public virtual IdentityRole Role { get; set; } public virtual string RoleId { get; set; } public virtual IdentityUser User { get; set; } public virtual string UserId { get; set; } } 

要更新数据库,请打开工具 – >库包管理器 – >包管理器控制台,然后键入打开的控制台

 update-database 

要重新启动LocalDB服务,请在“开始”/“程序”菜单 – >“所有程序” – >“Visual Studio” – >“Visual Studio工具”下打开“VS.NET的开发人员命令提示符”

运行以下命令:

 sqllocaldb.exe stop v11.0 sqllocaldb.exe delete v11.0 

之后再次执行“update-database”。