Entity Framework でカスタム初期化子を作成しようとしていました:
public void InitializeDatabase(DataSourceContext context)
{
if (context.Database.Exists())
{
try
{
if (!context.Database.CompatibleWithModel(true))
{
context.Database.Delete();
context.Database.Create();
}
else
{
context.Database.Create();
}
}
しかし、私はこのエラーが発生します:
説明: 現在の Web 要求の実行中に未処理の例外が発生しました。エラーの詳細とコード内のどこでエラーが発生したかについては、スタック トレースを確認してください。
例外の詳細: System.Data.SqlClient.SqlException: 無効なオブジェクト名 'dbo.SiteSources'。
データベース接続が確立されていても、sitesource
テーブルが作成されていないためだと思います。それ以外の場合は、初期化子を実行するだけでうまくいきますCreateDatabaseIfNotExists
。