如何连接ado.net数据库到ASP.asp.net MVC 5

本文关键字:net 数据库 ASP asp MVC ado 何连接 连接 | 更新日期: 2023-09-27 17:54:26

我是ASP新手。Net MVC 5和之前使用ASP创建了两个应用程序。Net Webforms和Ado。Net数据库连接。

我看过许多解释如何使用Ado的文章。asp.net连接。Net MVC,但所有的教程都使用实体框架。有没有办法只连接Ado.Net?

在我的WebForm应用程序中,我一直在使用这个连接代码:

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

是否可以在asp.net 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();
}

如何连接ado.net数据库到ASP.asp.net MVC 5

没有什么可以阻止您使用ADO。. NET中的MVC。实体框架是一个非常流行的ORM,它真的很容易设置,这就是为什么人们喜欢使用它的教程。但是如果你需要一种更自定义控制的方式来访问你的数据,你仍然可以使用ADO.NET。

只是一个提示-不要将连接存储在代码中,这被认为是不好的做法。如果将数据库移动到其他服务器,则需要更改代码并重新编译整个应用程序。您应该将连接字符串存储在*.config文件中:

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

并且可以像这样从代码中访问它:

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