ASP.NET MVC数据显示
作者:互联网
前言
学编程的人,都知道,任何编程语言,都会有数据显示功能,那么今天,本小编就以ASP.NET MVC数据显示为一个小小的案例。
(1)数据库
(2)Model
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Model
{
/// <summary>
/// 实体类:Login
/// </summary>
public class Login
{
/// <summary>
/// 无参构造
/// </summary>
public Login()
{
}
/// <summary>
/// 有参构造
/// </summary>
/// <param name="login_id">ID</param>
/// <param name="login_name">账号名</param>
/// <param name="login_password">密码名</param>
public Login(string login_id,string login_name,string login_password)
{
Login_Id = login_id;
Login_Name = login_name;
Login_Password = login_password;
}
/// <summary>
/// 属性:ID
/// </summary>
public string Login_Id { get; set; }
/// <summary>
/// 属性:账号名
/// </summary>
public string Login_Name { get; set; }
/// <summary>
/// 属性:密码名
/// </summary>
public string Login_Password { get; set; }
}
}
(3)DAL
1.LoginDAL
/// <summary>
/// 方法:数据显示
/// </summary>
/// <param name="login"></param>
/// <returns></returns>
public List<Login>Select_Login()
{
List<Login> list = new List<Login>();
using (SqlDataReader dr = DBHelpers.ExecuteReader("select * from Login"))
{
while(dr.Read())
{
list.Add(new Login
{
Login_Id = dr["Login_Id"] as string,
Login_Name = dr["Login_Name"] as string,
Login_Password = dr["Login_Password"] as string
});
}
return list;
}
}
2.DBHelpers
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.SqlClient;
namespace DAL
{
public static class DBHelpers
{
#region [ Connection ]
public static string connectionString = "Data Source=USER-20190614XD;Initial Catalog=Shopping;Integrated Security=True";
public static SqlConnection GetConnection
{
get
{
return new SqlConnection(connectionString);
}
}
#endregion
#region [ ExecuteNonQuery ]
/// <summary>
/// 普通SQL语句执行增删改
/// </summary>
/// <param name="cmdText">SQL语句</param>
/// <param name="commandParameters">可变参数</param>
/// <returns>受影响行数</returns>
public static int ExecuteNonQuery(string cmdText, params SqlParameter[] commandParameters)
{
return ExecuteNonQuery(cmdText, CommandType.Text, commandParameters);
}
/// <summary>
/// 存储过程执行增删改
/// </summary>
/// <param name="cmdText">存储过程</param>
/// <param name="commandParameters">可变参数</param>
/// <returns>受影响行数</returns>
public static int ExecuteNonQueryByProc(string cmdText, params SqlParameter[] commandParameters)
{
return ExecuteNonQuery(cmdText, CommandType.StoredProcedure, commandParameters);
}
/// <summary>
/// 执行增删改
/// </summary>
/// <param name="cmdText">命令字符串</param>
/// <param name="cmdType">命令类型</param>
/// <param name="commandParameters">可变参数</param>
/// <returns>受影响行数</returns>
public static int ExecuteNonQuery(string cmdText, CommandType cmdType, params SqlParameter[] commandParameters)
{
int result = 0;
using (SqlConnection conn = GetConnection)
{
try
{
SqlCommand command = new SqlCommand();
PrepareCommand(command, conn, cmdType, cmdText, commandParameters);
result = command.ExecuteNonQuery();
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
finally
{
if (conn != null && conn.State != ConnectionState.Closed)
conn.Close();
}
}
return result;
}
#endregion
#region [ ExecuteReader ]
/// <summary>
/// SQL语句得到 MySqlDataReader 对象
/// </summary>
/// <param name="cmdText">命令字符串</param>
/// <param name="commandParameters">可变参数</param>
/// <returns>MySqlDataReader 对象</returns>
public static SqlDataReader ExecuteReader(string cmdText, params SqlParameter[] commandParameters)
{
return ExecuteReader(cmdText, CommandType.Text, commandParameters);
}
/// <summary>
/// 存储过程得到 MySqlDataReader 对象
/// </summary>
/// <param name="cmdText">命令字符串</param>
/// <param name="commandParameters">可变参数</param>
/// <returns>MySqlDataReader 对象</returns>
public static SqlDataReader ExecuteReaderByProc(string cmdText, params SqlParameter[] commandParameters)
{
return ExecuteReader(cmdText, CommandType.StoredProcedure, commandParameters);
}
/// <summary>
/// 得到 MySqlDataReader 对象
/// </summary>
/// <param name="cmdText">命令字符串</param>
/// <param name="cmdType">命令类型</param>
/// <param name="commandParameters">可变参数</param>
/// <returns>MySqlDataReader 对象</returns>
public static SqlDataReader ExecuteReader(string cmdText, CommandType cmdType, params SqlParameter[] commandParameters)
{
SqlDataReader result = null;
//using (MySqlConnection conn = GetConnection)
//{
SqlConnection conn = GetConnection;
conn.Open();
try
{
SqlCommand command = new SqlCommand();
PrepareCommand(command, conn, cmdType, cmdText, commandParameters);
result = command.ExecuteReader(CommandBehavior.CloseConnection);
}
catch (Exception ex)
{
conn.Close();
throw new Exception(ex.Message);
}
return result;
}
#endregion
#region [ ExecuteDataSet ]
/// <summary>
/// 执行SQL语句, 返回DataSet
/// </summary>
/// <param name="cmdText">命令字符串</param>
/// <param name="commandParameters">可变参数</param>
/// <returns> DataSet </returns>
public static DataSet ExecuteDataSet(string cmdText, params SqlParameter[] commandParameters)
{
return ExecuteDataSet(cmdText, CommandType.Text, commandParameters);
}
/// <summary>
/// 执行存储过程, 返回DataSet
/// </summary>
/// <param name="cmdText">命令字符串</param>
/// <param name="commandParameters">可变参数</param>
/// <returns> DataSet </returns>
public static DataSet ExecuteDataSetByProc(string cmdText, params SqlParameter[] commandParameters)
{
return ExecuteDataSet(cmdText, CommandType.StoredProcedure, commandParameters);
}
/// <summary>
/// 返回DataSet
/// </summary>
/// <param name="cmdText">命令字符串</param>
/// <param name="cmdType">命令类型</param>
/// <param name="commandParameters">可变参数</param>
/// <returns> DataSet </returns>
public static DataSet ExecuteDataSet(string cmdText, CommandType cmdType, params SqlParameter[] commandParameters)
{
DataSet result = null;
using (SqlConnection conn = GetConnection)
{
try
{
SqlCommand command = new SqlCommand();
PrepareCommand(command, conn, cmdType, cmdText, commandParameters);
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand = command;
result = new DataSet();
adapter.Fill(result);
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
finally
{
if (conn != null && conn.State != ConnectionState.Closed)
conn.Close();
}
}
return result;
}
#endregion
#region [ ExecuteDataTable ]
/// <summary>
/// 执行SQL语句, 返回DataTable
/// </summary>
/// <param name="cmdText">命令字符串</param>
/// <param name="commandParameters">可变参数</param>
/// <returns> DataTable </returns>
public static DataTable ExecuteDataTable(string cmdText, params SqlParameter[] commandParameters)
{
return ExecuteDataTable(cmdText, CommandType.Text, commandParameters);
}
/// <summary>
/// 执行存储过程, 返回DataTable
/// </summary>
/// <param name="cmdText">命令字符串</param>
/// <param name="commandParameters">可变参数</param>
/// <returns> DataTable </returns>
public static DataTable ExecuteDataTableByProc(string cmdText, params SqlParameter[] commandParameters)
{
return ExecuteDataTable(cmdText, CommandType.StoredProcedure, commandParameters);
}
/// <summary>
/// 返回DataTable
/// </summary>
/// <param name="cmdText">命令字符串</param>
/// <param name="cmdType">命令类型</param>
/// <param name="commandParameters">可变参数</param>
/// <returns> DataTable </returns>
public static DataTable ExecuteDataTable(string cmdText, CommandType cmdType, params SqlParameter[] commandParameters)
{
DataTable dtResult = null;
DataSet ds = ExecuteDataSet(cmdText, cmdType, commandParameters);
if (ds != null && ds.Tables.Count > 0)
{
dtResult = ds.Tables[0];
}
return dtResult;
}
#endregion
#region [ ExecuteScalar ]
/// <summary>
/// 普通SQL语句执行ExecuteScalar
/// </summary>
/// <param name="cmdText">SQL语句</param>
/// <param name="commandParameters">可变参数</param>
/// <returns>受影响行数</returns>
public static object ExecuteScalar(string cmdText, params SqlParameter[] commandParameters)
{
return ExecuteScalar(cmdText, CommandType.Text, commandParameters);
}
/// <summary>
/// 存储过程执行ExecuteScalar
/// </summary>
/// <param name="cmdText">存储过程</param>
/// <param name="commandParameters">可变参数</param>
/// <returns>受影响行数</returns>
public static object ExecuteScalarByProc(string cmdText, params SqlParameter[] commandParameters)
{
return ExecuteScalar(cmdText, CommandType.StoredProcedure, commandParameters);
}
/// <summary>
/// 执行ExecuteScalar
/// </summary>
/// <param name="cmdText">命令字符串</param>
/// <param name="cmdType">命令类型</param>
/// <param name="commandParameters">可变参数</param>
/// <returns>受影响行数</returns>
public static object ExecuteScalar(string cmdText, CommandType cmdType, params SqlParameter[] commandParameters)
{
object result = null;
using (SqlConnection conn = GetConnection)
{
try
{
SqlCommand command = new SqlCommand();
PrepareCommand(command, conn, cmdType, cmdText, commandParameters);
result = command.ExecuteScalar();
}
catch (Exception ex)
{
throw new Exception(ex.Message);
}
finally
{
if (conn != null && conn.State != ConnectionState.Closed)
conn.Close();
}
}
return result;
}
#endregion
#region [ PrepareCommand ]
/// <summary>
/// Command对象执行前预处理
/// </summary>
/// <param name="command"></param>
/// <param name="connection"></param>
/// <param name="trans"></param>
/// <param name="cmdType"></param>
/// <param name="cmdText"></param>
/// <param name="commandParameters"></param>
private static void PrepareCommand(SqlCommand command, SqlConnection connection, CommandType cmdType, string cmdText, SqlParameter[] commandParameters)
{
try
{
if (connection.State != ConnectionState.Open) connection.Open();
command.Connection = connection;
command.CommandText = cmdText;
command.CommandType = cmdType;
if (commandParameters != null)
{
foreach (SqlParameter parm in commandParameters)
command.Parameters.Add(parm);
}
}
catch (Exception ex)
{
Console.Write(ex.Message);
}
}
#endregion
}
}
(4)BLL
/// <summary>
/// 方法:数据显示
/// </summary>
/// <param name="login"></param>
/// <returns></returns>
public List<Login> Select_Login()
{
return cd.Select_Login();
}
(5)MVC
1.控制器(Controllers)
public ActionResult Index(string q)
{
var albums = LoginBLL.Select_Login();
return View(albums);
}
2.视图(View)
@{
ViewBag.Title = "/Login/Login";
}
<script type="text/javascript">
function Login() {
location.href = "/Homme/Login";
}
</script>
<html>
<head>
<title></title>
</head>
<body>
@model IEnumerable<Model.Login>
@{ ViewBag.Title = "Serarch";}
<h2>Results</h2>
<table class="table table-condensed table-striped">
<tr>
<th>ID</th>
<th>UserName</th>
<th>Password</th>
</tr>
@foreach(var item in Model)
{
<tr>
<td>@item.Login_Id</td>
<td>@item.Login_Name</td>
<td>@item.Login_Password</td>
</tr>
}
</table>
</body>
</html>
(6)项目图
(7)运行结果
尾言
综合上面的案例来看,要实现ASP.NET MVC数据显示也是很简单的,如果在实践的过程中,没有实现该功能的或者是有疑问的朋友,欢迎提问,本人愿以自己的微薄之力进行解答。
标签:cmdText,ASP,string,public,MVC,conn,Login,NET,commandParameters 来源: https://blog.csdn.net/qqj3066574300/article/details/98106434