1. ホーム
  2. .net

[解決済み] [Solved] ファイル *.mdf をデータベースとしてアタッチできない

2022-02-19 12:46:20

質問

基本的にはチュートリアルに沿って、以下のように .mdf ファイルを後から作成しました。

現在、アプリケーションを実行しようとすると、次のようなエラー(このスレッドのタイトル)が表示されます。 エラーが発生したコードは以下の通りです(ASP.NET MVC 4)。

OdeToFoodDB db = new OdeToFoodDB();

public ActionResult Index()
{
    var model = db.Restaurants.ToList();
    return View(model);
}

私の接続文字列は以下の通りです。

<add name="DefaultConnection" 
     connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=OdeToFoodDb;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\OdeToFoodDb.mdf" 
     providerName="System.Data.SqlClient" />

SQL Server Object Explorerを見てみましたが、以下のような感じです。

また、サーバーエクスプローラーでは、データ接続が見当たりません。

また、サーバーエクスプローラーで新しい接続を追加しようとしても、以下の名前のデータベースは表示されません。 OdeToFoodDb .

この広い質問で申し訳ありませんが、私はEntity Frameworkに新しく、ここで何が間違っているのかよくわかりません。

どのように解決するのですか?

これを見てください。 Entity Frameworkがデータベースを作成しない

データベースの名前を 別の名前を付けてください。 SQL Expressでは、時々問題が発生することがあります。 同じ名前のデータベースを2回目に作成しようとしたとき。 SQL Server Management Studioを使って修正する方法もありますが、それは 一般的には、異なるデータベース名を使用する方が簡単です。

編集 を確認するものであるため、この回答は採用されました。 バグ とOPが使用した回避策(データベースの名前を変更すると ヘルプ ). データベースの名前を変更することが本当に許容できる方法でないことは全く同意しますし が完全に問題を解決するわけではありません。 . 残念ながら、SSMSで本当に解決できる他の方法を確認していません。