ASP.Net实现玩具管理(三层架构,两项数据相乘)

目录

演示功能:

点击启动生成页面

步骤:

1、建文件

​编辑

2、添加引用关系

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

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

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

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

8、这个地方可以进行计算得出小计的数字

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

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


演示功能:

点击启动生成页面

步骤:

1、建文件

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

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

2、添加引用关系

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

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

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

namespace Models
{
  public   class GoodsModel
    {
        private string goodsID;

        public string GoodsID
        {
            get { return goodsID; }
            set { goodsID = value; }
        }
      private string goodsName;

      public string GoodsName
      {
          get { return goodsName; }
          set { goodsName = value; }
      }

      private  string goodsPic;

      public  string GoodsPic
      {
          get { return goodsPic; }
          set { goodsPic = value; }
      }
      private  string goodsPrice;

      public  string GoodsPrice
      {
          get { return goodsPrice; }
          set { goodsPrice = value; }
      }
      private string goodsStock;

      public string GoodsStock
      {
          get { return goodsStock; }
          set { goodsStock = value; }
      }

      private string xiaoji;

      public string Xiaoji
      {
          get { return xiaoji; }
          set { xiaoji = value; }
      }
      private string zongji;
        public string Zongji
{
  get { return zongji; }
  set { zongji = value; }
}}
}

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=GoodsDB;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 ret=  cmd.ExecuteNonQuery();
       conn.Close();
       return ret > 0;
     }
     public static SqlDataReader Read(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 GoodsService
    {
      public static List<Models.GoodsModel> ChaXun()
      {
       SqlDataReader read=   DBHelper.Read("select * from Goods");
          List<Models.GoodsModel> list = new List<Models.GoodsModel>();
          int zong = 0;
          while (read.Read())
          {
              Models.GoodsModel model = new Models.GoodsModel();
              model.GoodsID = read["GoodsID"].ToString();
              model.GoodsName = read["GoodsName"].ToString();
              model.GoodsPic = read["GoodsPic"].ToString();
              model.GoodsPrice = read["GoodsPrice"].ToString();
              model.GoodsStock = read["GoodsStock"].ToString();
              model.Xiaoji = (int.Parse(read["GoodsStock"].ToString()) * int.Parse(read["GoodsPrice"].ToString())).ToString();
            
              
               zong  += int.Parse(read["GoodsStock"].ToString()) * int.Parse(read["GoodsPrice"].ToString());
               model.Zongji = zong.ToString();
              list.Add(model);
          }
          return list;
      }
      public static List<Models.GoodsModel> MoCha(string name)
      {
          string sql = string.Format("select * from Goods where GoodsName like '%{0}%'",name);
          SqlDataReader read = DBHelper.Read(sql);
          List<Models.GoodsModel> list = new List<Models.GoodsModel>();
          int zong = 0;
          while (read.Read())
          {
              Models.GoodsModel model = new Models.GoodsModel();
              model.GoodsID = read["GoodsID"].ToString();
              model.GoodsName = read["GoodsName"].ToString();
              model.GoodsPic = read["GoodsPic"].ToString();
              model.GoodsPrice = read["GoodsPrice"].ToString();
              model.GoodsStock = read["GoodsStock"].ToString();
              model.Xiaoji = (int.Parse(read["GoodsStock"].ToString()) * int.Parse(read["GoodsPrice"].ToString())).ToString();

              zong += int.Parse(read["GoodsStock"].ToString()) * int.Parse(read["GoodsPrice"].ToString());
              model.Zongji = zong.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 GoodsManger
    {

     public static List<Models.GoodsModel> ChaXun() {
         return DAL.GoodsService.ChaXun();
     }
     public static List<Models.GoodsModel> MoCha(string name) {
         return DAL.GoodsService.MoCha(name);
     }
    }
}

8、这个地方可以进行计算得出小计的数字

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

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

<!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>
        <asp:Label ID="Label1" runat="server" Text="Label">商品名称:</asp:Label><asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> 
        <asp:Button ID="Button1" runat="server" Text="按关键词查询" OnClick="Button1_Click" />
        <asp:Repeater ID="Repeater1" runat="server" OnItemCommand="Repeater1_ItemCommand">
            <HeaderTemplate>
                <table border="1px">
                    <tr>
                        <th>ID</th>
                         <th>商品名</th>
                         <th>图片</th>
                          <th>价格</th>
                         <th>库存</th>
                         <th>小计</th>
                         <th>操作</th>
                    </tr>
                
            </HeaderTemplate>
            <ItemTemplate>
                <tr>
                        <td><%#Eval("GoodsID") %></td>
                    <td><%#Eval("GoodsName") %></td>
                     <td><img height="50px" width="100px" src="Img/<%#Eval("GoodsPic")%>"/></td>
                     <td><%#Eval("GoodsPrice") %></td>
                     <td><%#Eval("GoodsStock") %></td>
                    
                  <td><%#Eval("Xiaoji") %></td>

                     <td><a href="#">删除</a></td>
                    </tr>
               
            </ItemTemplate>
            <FooterTemplate>
              
               
                </table>
           
            </FooterTemplate>


        </asp:Repeater>
           <asp:Label ID="Label2" runat="server" Text="Label"></asp:Label>
    </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 WebApplication1
{
    public partial class WebForm1 : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                Repeater1.DataSource=BLL.GoodsManger.ChaXun();
                Repeater1.DataBind();
            }
        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            Repeater1.DataSource = BLL.GoodsManger.MoCha(TextBox1.Text.ToString());
            Repeater1.DataBind();
        }

        protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e)
        {

        }
    }
}

  • 9
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

W少年没有乌托邦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值