2016-07-03 12 views
2

私はasp.net MVC 5で新しくなっています。それ以前は、Ado.Netデータベース接続を使用してAsp.net Webformベースのアプリケーションで2つのアプリケーションを作成しました。ado.netデータベースをAsp.net MVC 5に接続する方法

私は多くの記事を見ました.Adp.net mvcへのAdo.Net接続ですが、すべてのチュートリアルはEntity Framework上にあります。 Ado.Netだけを接続する方法はありますか? Webフォームで

私はこのたっコード使用しています

connetionString = "Data Source=ServerName;Initial Catalog=DatabaseName;User ID=UserName;Password=Password"; 
      sql = "SQL Statemnt"; 
      cnn = new SqlConnection(connetionString); 
      try 
      { 
       cnn.Open(); 
       cmd = new SqlCommand(sql, cnn); 
       cmd.ExecuteNonQuery(); 
       cmd.Dispose(); 
       cnn.Close(); 
      } 

することで、私はこのエラーを得た

ASP。ネットMVC5に使用することです

Cannot open database "online_recharge" requested by the login. The login failed. 
Login failed for user 'IIS APPPOOL\DefaultAppPool'. 

コード:

public ActionResult Add_Balance() 
     { 
      string record; 
      using (SqlConnection sqlConnection = new SqlConnection(connectionString)) 
      { 
       sqlConnection.Open(); 
       SqlCommand sqlCmd = new SqlCommand("Select * from COMMISSION_PACKAGE",sqlConnection); 
       SqlDataReader reader = sqlCmd.ExecuteReader(); 
       record = reader["PKG_NM"].ToString(); 
       sqlConnection.Close(); 
      } 
      ViewBag.Demo = record; 
      return View(); 
     } 
+0

これはMVC5のアプリでうまく動作するはずです。あなたがそれ以上のことをするならば、EFはそれをより簡単できれいにします。 – Pawel

答えて

2

ThあなたがMVCでADO.NETを使用するのを止めるものは何もありません.Entity Frameworkは非常に普及しているORMです。なぜなら、人々がチュートリアルでそれを使用している理由です。しかし、あなたはあなたのデータにアクセスするために、引き続きADO.NETを使用できます。

コードで接続を保存しないでください。悪い習慣とみなされます。データベースを別のサーバーに移動すると、コードを変更してアプリケーション全体を再コンパイルする必要があります。接続を保存する必要があります

<connectionStrings> 
    <add name="ConnectionString" connectionString="Data Source=ServerName;Initial Catalog=DatabaseName;User ID=UserName;Password=Password"/> 
    </connectionStrings> 

そして、このようなあなたのコードからアクセスすることができます:Web.configファイル内の文字列

string connectionString = System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString; 
+0

ありがとう、しかし、このクラス 'SqlConnection'のobjを作成すると、' SqlConnection'、 'sqlCommand'などのエラーを返します。 –

+0

" using System.Data.SqlClient; "を追加する必要があります。 SqlConnectionクラスを使用するには –

+0

このエラーが発生しました。「データベースを開くことができません。」と上記のコードを参照してください。 –

関連する問題