三层

作者: 山猪打不过家猪 | 来源:发表于2022-08-18 10:03 被阅读0次
三层结构
  • Model实体层
    直接与用户交互的层,登陆页面
  • DAL数据层
    封装所有与数据库交互的操作
  • BLL业务层
    业务处理,逻辑判断
  • Common 工具层
    将平时常用的包放在这层


    image.png
三层项目的创建
1. 添加一个空解决方案
image.png
2. 添加三层
image.png image.png
3. 创建web应用
image.png
image.png
4.Model层添加UserInfo类
namespace CZBK.TestProject.Model
{
    public class UserInfo
    {
        public int ID { get; set; }
        public string UserName { get; set; }
        public string UserPass { get; set; }
        public DateTime RegTime { get; set; }
        public string EmailAddr { get; set; }
    }
}

  • 需要给DAL数据层添加该层引用,因为数据层要用到这些字段
5.DAL层添加SqlHelper类

Web.config

    <connectionStrings>

        <add name="connStr" connectionString="server=127.0.0.1;uid=sa;pwd=shangxi;database=new_test" />
        
    </connectionStrings>
  • SqlHelper.cs
using System;
using System.IO;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;

namespace CZBK.TestProject.DAL
{
    public class SqlHelper
    {
        private readonly static string connStr = ConfigurationManager.ConnectionStrings["connStr"].ConnectionString;
        public static DataTable GetTable(string sql, CommandType type, params SqlParameter[] pars)
        {
            using (SqlConnection conn = new SqlConnection(connStr))
            {
                using (SqlDataAdapter atper = new SqlDataAdapter(sql, conn))
                {
                    atper.SelectCommand.CommandType = type;
                    if (pars!=null)
                    {
                        atper.SelectCommand.Parameters.AddRange(pars);
                    }
                    DataTable da = new DataTable();
                    atper.Fill(da);
                    return da;
                }
            }
        }

        public static int ExecuteNonQuery(string sql, CommandType type, params SqlParameter[] pars)
        {
            using (SqlConnection conn = new SqlConnection(connStr))
            {
                using (SqlCommand cmd = new SqlCommand(sql, conn))
                {
                    cmd.CommandType = type;
                    if ( pars !=null)
                    {
                        cmd.Parameters.AddRange(pars);
                    }
                    conn.Open();
                    return cmd.ExecuteNonQuery();
                }
            }
        }
    }
}

  • 再添加一个UserInfoDAL.cs

相关文章

网友评论

      本文标题:三层

      本文链接:https://www.haomeiwen.com/subject/mecegrtx.html