如何连接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中的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;