カテゴリー
Microsoft

【ASP.NET MVC5】プロジェクト外の DB に接続する方法

ASP.NET MVC5 のチュートリアルを実践しておりますと、開発環境の内部に自然とデータベースが作成され、自然と接続しております。

大変便利ですの♪

ですけれども、自分の意志でデータベースを作成し、そして、自分の意志でプロジェクトから接続するデータベースを決めるにはどうしたらよいのかしら?

今回、それらのやり方を残します!

DB の作成方法


Visual Studio 2015 に標準の SQL Server への作成方法となります。

データベースを作成するだけならば、Visual Studio 2015 を立ち上げるだけで操作が可能で、その後にプロジェクトを立ち上げる必要はございません。

  1. 表示 > SQL Server Object Explorer (Ctrl + \, Ctrl + s)。または、ウインドウ左にある。
  2. SQL Server > (localdb)\ProjectsV12 > Databases > 右クリック >Add Database

(localdb)\ProjectsV12 の部分は別環境で、(localdb)\MSSQLLocalDB の場合もございました。

今回、試しに「New Database」を作成いたしました。

作成した DB へとつなげるための接続文字列の入手方法

先ほど作成した「New Database」を例にとります。

  1. SQL Server Object Explorer で New Database を右クリック > Properties
  2. Connection string の値をコピー

これで完了です!例えば次のようになりました。使うときは、これを DB 接続設定に貼り付けるだけですの♪

Data Source=(localdb)\ProjectsV12;Initial Catalog=”New Database”;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False

ASP.NET MVC5 プロジェクトから DB へ接続する設定

web.config の connectionStrings

<add name="Sample1Context" connectionString="Data Source=(localdb)\MSSQLLocalDB; Initial Catalog=Sample1Context-20151016212614; Integrated Security=True; MultipleActiveResultSets=True; AttachDbFilename=|DataDirectory|Sample1Context-20151016212614.mdf" providerName="System.Data.SqlClient" />

この部分の connectionString を先ほどコピーした接続文字列に置き換えるだけですの♪おっと、接続文字列のダブルクォーテーション「”」はシングルクォーテーション「’」に変えておいたほうがよさそうですわね♪

<add name="Sample1Context" connectionString="Data Source=(localdb)\ProjectsV12;Initial Catalog='New Database';Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False" providerName="System.Data.SqlClient" />

この状態でマイグレーションなどを行いますと、New Database に接続されましてテーブル追加などがなされますわ♪

2015年12月18日追記。補足

  • [SQL Server Object Explorer] はデータベース接続クライアント (SQL Server Management Studio) の幾つかの機能を持っているイメージ
  • [サーバーエクスプローラー] はプロジェクトの接続設定を使ってプロジェクトからデータベースへ接続するイメージ
  • よって、[サーバーエクスプローラー] からデータベースへ接続できれば、Web.config の connectionString が正しく機能していると判断できる。
  • 確認手順は以下のとおり。
    1. [サーバーエクスプローラー] > [データ接続] > [connectionString (SampleProject)1] を開く。
    2. 接続できていれば、 [テーブル] などのデータベース項目が表示される。

おわりに

冒頭でもふれましたけれども、本格的に開発をしようと思い立ったたら、予め備わっているローカル DB だけで全てまかっていくのは難しく存じます。

そこで今回、どんな DB にでも繋げられるよう、ポイントをおさえました。DB 関連については、以前の次の投稿も参考になると存じます。

以上です。

コメントを残す