编程语言
首页 > 编程语言> > ASP.NET MVC数据显示

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