c# - 不调用种子方法
问题描述
我有一个奇怪的问题,我的Seed
方法没有被调用。我调试这个项目已经很长时间了,但据我所知,这是可行的。没有调用我的Seed
方法可能有什么问题?以下是用于调查的代码。
应用程序_开始
protected void Application_Start()
{
Database.SetInitializer<MusicContextSqlServer>(new MusicStoreDataContextInitializer());
AreaRegistration.RegisterAllAreas();
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
}
MusicStoreDataContextInitializer
public class MusicStoreDataContextInitializer : DropCreateDatabaseAlways<MusicContextSqlServer>
{
protected override void Seed(MusicContextSqlServer context)
{
var artist = new Artist() {Name = "First Artist", HireDate = DateTime.Now};
context.Artist.Add(artist);
context.Albums.Add(new Album() {Artist = artist, Title = "First Album"});
context.Albums.Add(new Album() { Artist = artist, Title = "Second Album" });
context.Albums.Add(new Album()
{
Artist = context.Artist.Add(new Artist() {Name = "Second artist", HireDate = DateTime.Now }),
Title = "Third Album"
});
context.Artist.Add(new SoloArtist() {Name = "Solo Artist", Instrument = "Guitar", HireDate = DateTime.Now });
context.SaveChanges();
}
}
MusicContextSqlServer:
public class MusicContextSqlServer : DbContext
{
public DbSet<Album> Albums { get; set; }
public DbSet<Artist> Artist { get; set; }
public DbSet<SoloArtist> Artists { get; set; }
public DbSet<ArtistDetails> ArtistDetails { get; set; }
public MusicContextSqlServer()
: base("name=MusicContextSqlServer")
{
Database.Log = s => Debug.WriteLine(s);
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
}
}
网页配置
<connectionStrings>
<add name="MusicContextSqlServer" connectionString="data source=(local);initial catalog=MusicStore;user id=sa;password=pass;MultipleActiveResultSets=True;App=EntityFramework" providerName="System.Data.SqlClient" />
</connectionStrings>
解决方案
推荐阅读
- java - 我应该如何在不使用数组的情况下生成随机数列表并确定最大的?
- javascript - 如何使用函数修复未定义的值
- laravel - 无法在资源中获取 Auth::user()
- sql - 连续 2 天查找特定交易类型的金额总和
- batch-file - 在批处理脚本中的引号前添加反斜杠
- keycloak - 尝试访问 Keycloak 中的帐户(预览版)REST API,得到 404
- php - 正则表达式删除 CSV 文件中引号之间出现的任何换行符
- java - 使用带有标头的 HttpURLConnection GET 请求时如何修复错误代码 500?标头未发送
- spring - Spring Security OAuth - 如何禁用登录页面?
- webpack - 字体 Awesone 5 网址错误