0
点赞
收藏
分享

微信扫一扫

云计算:OpenStack 配置云主机实例的资源实现内网互通

心存浪漫 2023-12-29 阅读 14

演示功能:

点击启动生成页面

 点击搜索模糊查询

点击添加跳转新界面

 此处设置文本框多行

点击Button添加

步骤:

1、建文件

下图是三层架构列表,Models里面有模拟数据库中列的类,DAL中有DBHelper和service,BLL中有BllManager文件用于ui界面直接调用

建照片文件图片,数据夹用于展示库存地址 

2、添加引用关系

DAL引用Models文件,BLL引用DAL和Models文件,主文件WebApplication1引用Bll和Models

3、根据数据库中的列写Models下的XueshengModels类

4、DAL下的DBHelper(对数据库进行操作)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data.SqlClient;
namespace DAL
{
  public   class DBHelper
    {
      public static string connstr = "server=.;database=CarDB;uid=sa;pwd=123123";
      public static SqlConnection conn = null;
      public static void Connect() {
          if (conn==null)
          {
              conn = new SqlConnection(connstr);
              
          }
          conn.Close();
          conn.Open();

      }
      public static bool NoQuery(string sql) {
          Connect();
          SqlCommand cmd = new SqlCommand(sql,conn);
         int temp= cmd.ExecuteNonQuery();
         return temp > 0;
      }
      public static SqlDataReader Reader(string sql){
          Connect();
          SqlCommand cmd = new SqlCommand(sql, conn);
          return cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection);
      }
    }
}

5、DAL数据访问层下的service文件

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data.SqlClient;
namespace DAL
{
   public  class DalService
    {
       public static List<Models.ModelsCarInfo> Query()
       {
           string cha = "select * from CarInfo";
           List<Models.ModelsCarInfo> list = new List<Models.ModelsCarInfo>();
          SqlDataReader read=  DBHelper.Reader(cha);
           while (read.Read())
           {
               Models.ModelsCarInfo model = new Models.ModelsCarInfo();
               model.InfoID = read["InfoID"].ToString();
               model.InfoPic = read["InfoPic"].ToString();
               model.InfoTitle = read["InfoTitle"].ToString();
               model.PubTime = read["PubTime"].ToString();
               model.CarPrice = read["CarPrice"].ToString();
               list.Add(model);
           } ;
           return list;

       }
       public static bool Tianjia(string title,string price) {
           string sql = string.Format("insert CarInfo values('{0}','Desert.jpg',{1},GETDATE())",title,price);
           if ( DBHelper.NoQuery(sql))
           {
               return true;
           }
           else
           {
               return false;
           };
       
       
       }
       public static List<Models.ModelsCarInfo> Sou(string title)
       {
           string cha = string.Format("select * from CarInfo where InfoTitle like '%{0}%'", title);
           List<Models.ModelsCarInfo> list = new List<Models.ModelsCarInfo>();
           SqlDataReader read = DBHelper.Reader(cha);
           while (read.Read())
           {
               Models.ModelsCarInfo model = new Models.ModelsCarInfo();
               model.InfoID = read["InfoID"].ToString();
               model.InfoPic = read["InfoPic"].ToString();
               model.InfoTitle = read["InfoTitle"].ToString();
               model.PubTime = read["PubTime"].ToString();
               model.CarPrice = read["CarPrice"].ToString();
               list.Add(model);
           };
           return list;

       }
    }
}

6、BLL业务逻辑层下调用DAL的文件

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace BLL
{
   public  class BLLManager
    {
       public static List<Models.ModelsCarInfo> Query() {
           return DAL.DalService.Query();
       }
       public static bool Tianjia(string title, string price) {
           return DAL.DalService.Tianjia(title, price);
       }
       public static List<Models.ModelsCarInfo> Sou(string title) {
           return DAL.DalService.Sou(title);
       }
    }
}

7、ui表现层主界面前端部分

8、ui表现层主界面后端部分

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace Index
{
    public partial class WebForm1 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                List<Models.ModelsCarInfo> list = BLL.BLLManager.Query();
                this.Repeater1.DataSource = list;
                this.Repeater1.DataBind();
                Label2.Text = list.Count.ToString();
            
            }
               
            
       

        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            List<Models.ModelsCarInfo> list = BLL.BLLManager.Sou(TextBox1.Text.ToString());
            this.Repeater1.DataSource = list;
            this.Repeater1.DataBind();
        }
    }
}

9、ui表现层添加界面前端部分

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Tianjia.aspx.cs" Inherits="Index.Tianjia" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    <a href="WebForm1.aspx">返回</a> 
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
      <br />  <asp:Label ID="Label1" runat="server" Text=" 标题"></asp:Label><asp:TextBox ID="TextBox1" runat="server"></asp:TextBox><asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ErrorMessage="标题不能为空" ControlToValidate="TextBox1"></asp:RequiredFieldValidator>
 <br /> <asp:Label ID="Label2" runat="server" Text="价格"></asp:Label><asp:TextBox ID="TextBox2" runat="server"></asp:TextBox><asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ErrorMessage="价格不能为空" ControlToValidate="TextBox2"></asp:RequiredFieldValidator>
    <br />     <asp:Button ID="Button1" runat="server" Text="添加" OnClick="Button1_Click" />
         </div>
    </form>
</body>
</html>

10、ui表现层添加界面后端部分

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace Index
{
    public partial class Tianjia : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            UnobtrusiveValidationMode = UnobtrusiveValidationMode.None;
        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            if (BLL.BLLManager.Tianjia(TextBox1.Text.ToString(), TextBox2.Text.ToString()))
            {
                ClientScript.RegisterStartupScript(this.GetType(), "success", "alert('成功了!');location.href='WebForm1.aspx'", true);
            }
            else
            {
                ClientScript.RegisterStartupScript(this.GetType(), "fail", "alert('失败!');", true);

            };
        }
    }
}

举报

相关推荐

0 条评论