zoukankan      html  css  js  c++  java
  • ASP.NET中使用Entity Framework开发增删改查的Demo(EF增删改查+母版页的使用)

    这里更多的是当作随身笔记使用,记录一下学到的知识,以便淡忘的时候能快速回顾

    这里是该项目的第二部分,

    第一部分
    第二部分(当前部分)
    大完结版本

    此Demo是新建了一个音乐类型的web,然后使用母版页套取格式,对音乐类型进行新建,编辑,删除,和查询的操作

    首先创建一个母版页
    在这里插入图片描述

    样式自己调试就好,这里就不附样式代码了
    这个母版页没有后台代码

    <%@ Master Language="C#" AutoEventWireup="true" CodeBehind="AdminSite.master.cs" Inherits="WebApplication1.Admin.AdminSite" %>
    
    <!DOCTYPE html>
    
    <html>
    <head runat="server">
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title></title>
        <asp:ContentPlaceHolder ID="head" runat="server">
        </asp:ContentPlaceHolder>
        <link href="../Assets/css/animate.min.css" rel="stylesheet" />
        <link href="../Assets/css/font-awesome.css" rel="stylesheet" />
        <link href="../Assets/css/font-awesome.min.css" rel="stylesheet" />
        <link href="../Assets/css/grids-responsive-min.css" rel="stylesheet" />
        <link href="../Assets/css/input.css" rel="stylesheet" />
        <link href="../Assets/css/login.css" rel="stylesheet" />
        <link href="../Assets/css/main.css" rel="stylesheet" />
        <link href="../Assets/css/pure-extends.css" rel="stylesheet" />
        <link href="../Assets/css/pure-min.css" rel="stylesheet" />
        <link href="../Assets/css/shop.css" rel="stylesheet" />
    
    </head>
    <body>
        <form id="form1" runat="server">
            <div id="m-header">
                <div class=" home-menu pure-menu pure-menu-horizontal">
                    <a href="#" class="pure-menu-heading pure-menu-link">在线音乐商店-后台管理</a>
                    <ul class="pure-menu-list">
                        <li class="pure-menu-item pure-menu-has-children pure-menu-allow-hover">
                            <a href="#" class="pure-menu-link">
                                <i class="fa fa-user-circle"></i>
                                <asp:Label ID="lbUser" runat="server" Text="管理员"></asp:Label>
                            </a>
                            <ul class="pure-menu-children">
                                <li class="pure-menu-item pure-menu-allow-hover">
                                    <asp:LinkButton ID="lbExit" CssClass="pure-button pure-button-primary" runat="server">注销</asp:LinkButton>
                                </li>
                            </ul>
                        </li>
                    </ul>
                </div>
    
            </div>
            <div id="m-body" class="pure-g">
                <div id="nav" class=" pure-u-1-4">
                    <div id="nav-item" class="pure-menu custom-restricted-width">
                         
    
                        <ul class="pure-menu-list">
                            <li class="pure-menu-item"><a href="MusicManager.aspx" class="pure-menu-link">音乐管理</a></li>
                            <li class="pure-menu-item"><a href="MusicType.aspx" class="pure-menu-link">类型管理</a></li>
                            <li class="pure-menu-item"><a href="OrdersManager.aspx" class="pure-menu-link">订单管理</a></li>
                            <li class="pure-menu-item"><a href="RoleManager" class="pure-menu-link">角色管理</a></li>
                            <li class="pure-menu-item"><a href="UserManager" class="pure-menu-link">用户管理</a></li>
                            </ul>
                    </div>
                </div>
                <div id="main" class=" pure-u-3-4">
                    <asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
                    </asp:ContentPlaceHolder>
                </div>
            </div>
             <script src="../Assets/js/jquery-3.4.1.min.js"></script> 
            <script>
                $(function () {
                    $("#nav-item a").each(function () {
                        var index = window.location.href.indexOf($(this).attr("href"));
                        if (index != -1) {
                            $(this).addClass("pure-menu-selected");
                        } else {
                            $(this).removeClass("pure-menu-selected");
                        }
                    })
                })
            </script>
        </form>
       
    </body>
    </html>
    
    

    然后是音乐类型显示的页面

    <%@ Page Title="" Language="C#" MasterPageFile="~/Admin/AdminSite.Master" AutoEventWireup="true" CodeBehind="MusicType.aspx.cs" Inherits="WebApplication1.Admin.MusicManager" %>
    
    <asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
        <link href="../Assets/css/input.css" rel="stylesheet" />
    </asp:Content>
    <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
        <div class="pure-form">
            <fieldset>
                <%--genres表--%>
                <legend>后台管理<i class="fa fa-angle-double-right"></i>类型管理
                    <asp:Button ID="Button1" runat="server" CssClass="button-default pure-button-primary tools-button" Text="添加音乐类型" OnClick="Button1_Click" />
                </legend>
            </fieldset>
        </div>
        <table class="pure-table">
            <thead>
                <tr>
                    <th>#</th>
                    <th>Make</th>
                    <th>Model</th>
                    <th>Year</th>
                </tr>
            </thead>
            <tbody>
                <asp:Repeater ID="Repeater1" runat="server" OnItemCommand="Repeater1_ItemCommand">
                    <ItemTemplate> 
                       <tr>
                                <th scope="col"><%# Eval("GenreId") %></th>
                                <td><%# Eval("Name") %></td>
                                <td><%# Eval("Description").ToString().Length>30?Eval("Description").ToString().Substring(0,30)+"...":Eval("Description") %>...</td>
                                <td>
                                    <asp:LinkButton ID="LinkButton1" CssClass="button-default pure-button-primary" runat="server"  CommandArgument='<%#Eval("GenreId") %>'  CommandName="Edit">编辑</asp:LinkButton>
                                    <asp:LinkButton ID="LinkButton2" CssClass="button-default  button-error" runat="server"     CommandArgument='<%#Eval("GenreId") %>'  CommandName="Delete">删除</asp:LinkButton></td>
                             
                        </tr>
                    </ItemTemplate>
                </asp:Repeater>
            </tbody>
        </table>
    </asp:Content>
    
    

    音乐类型显示页面的后台代码

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using WebApplication1.DAL;
    
    using WebApplication1.BLL;
    
    namespace WebApplication1.Admin
    {
        public partial class MusicManager : System.Web.UI.Page
        {
            protected void Page_Load(object sender, EventArgs e)
            {
                using (OLMSDBEntities oLMSDB = new OLMSDBEntities())
                {
                    Repeater1.DataSource = oLMSDB.Genres.ToList();
                    Repeater1.DataBind();
                }
            }
    
            protected void Repeater1_ItemCommand(object source, RepeaterCommandEventArgs e)
            {
    
                string str = e.CommandName.ToString();
                //这里获取id,我的id是刚才我赋值的时候CommandArgument是赋值的id
                int id = Convert.ToInt32(e.CommandArgument.ToString());
                //using (OLMSDBEntities oLMSDB = new OLMSDBEntities())
                //{
    
    
                   // var gener = oLMSDB.Genres.FirstOrDefault(t => t.GenreId == id);
                    if (str == "Delete")
                    {
    
                        //后面是对数据库的操作,可以忽略
                        //    oLMSDB.Genres.Remove(gener);
                        bool flag_deleteMussicType = MusicType.deleteMusicType(id);
                        if (flag_deleteMussicType)
                        {
                            string strUrl = "<script>alert('删除成功');window.location.href='MusicType.aspx'</script>";
                            Response.Write(strUrl);
                        }
                        else
                        {
                            string strUrl = "<script>alert('删除失败');</script>";
                            Response.Write(strUrl);
                        }
                    }
                    else if (str == "Edit")
                    {
                        Response.Redirect($"Edit_MusicType.aspx?id={id}");
    
                    }
                //}
            }
    
            protected void Button1_Click(object sender, EventArgs e)
            {
                Response.Redirect("Add_MusicType.aspx");
            }
        }
    }
    

    然后是添加音乐类型的界面

    <%@ Page Title="" Language="C#" MasterPageFile="~/Admin/AdminSite.Master" AutoEventWireup="true" CodeBehind="Add_MusicType.aspx.cs" Inherits="WebApplication1.Admin.Add_MusicType" %>
    <asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
    </asp:Content>
    <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
         <div class="pure-form">
            <fieldset>
                <legend>类型管理&nbsp;&nbsp;<i class="fa fa-angle-double-right"></i>&nbsp;&nbsp;类型信息
                    <asp:Button ID="Button2" runat="server" Text="返回" CssClass="pure-button tools-button" OnClick="Button2_Click" />
                    <asp:Button ID="Button1" runat="server" Text="保存" CssClass="pure-button pure-button-primary tools-button" OnClick="Button1_Click" />
                </legend>
            </fieldset>
            <div class="pure-g">
                <div class="pure-u-2-3">
                    <asp:Label ID="Label1" runat="server" Text="音乐名称"></asp:Label>
                    <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
                </div>
                <div class="pure-u-2-3">
                       <asp:Label ID="Label2" runat="server" Text="音乐描述"></asp:Label>
                    <asp:TextBox ID="TextBox2" runat="server" TextMode="MultiLine"></asp:TextBox>
                </div>
            </div>
         </div>
    </asp:Content>
    
    

    添加音乐类型界面的后台代码

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using WebApplication1.BLL;
    using WebApplication1.DAL;
    
    namespace WebApplication1.Admin
    {
        public partial class Add_MusicType : System.Web.UI.Page
        {
            protected void Page_Load(object sender, EventArgs e)
            {
    
            }
    
            protected void Button1_Click(object sender, EventArgs e)
            {
                string music_Name = TextBox1.Text;
                string music_Detail = TextBox2.Text;
    
               bool flag =  MusicType.addMusicType(music_Name, music_Detail);
                if (flag)
                {
                    string strUrl = "<script>alert('添加成功');window.location.href='MusicType.aspx'</script>";
                            Response.Write(strUrl);
                }
                else
                {
                    string strUrl = "<script>alert('添加失败');</script>";
                            Response.Write(strUrl);
                }
    
                //using (OLMSDBEntities oLMSDB = new OLMSDBEntities())
                //{
    
                //    oLMSDB.Genres.Add(new Genres
                //    {
                //        Name = music_Name,
                //        Description = music_Detail
                //    });
                //    if (oLMSDB.SaveChanges() > 0)
                //    {
                //        string strUrl = "<script>alert('添加成功');window.location.href='MusicType.aspx'</script>";
                //        Response.Write(strUrl);
                //    }
                //    else
                //    {
                //        string strUrl = "<script>alert('添加失败');</script>";
                //        Response.Write(strUrl);
                //    }
                //}
            }
    
            protected void Button2_Click(object sender, EventArgs e)
            {
                string strUrl = "window.location.href='MusicType.aspx'</script>";
                Response.Write(strUrl);
            }
        }
    }
    

    编辑音乐类型界面的代码

    <%@ Page Title="" Language="C#" MasterPageFile="~/Admin/AdminSite.Master" AutoEventWireup="true" CodeBehind="Edit_MusicType.aspx.cs" Inherits="WebApplication1.Admin.Edit_MusicType" %>
    <asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
    </asp:Content>
    <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
        <div class="pure-form">
            <fieldset>
                <legend>类型管理&nbsp;&nbsp;<i class="fa fa-angle-double-right"></i>&nbsp;&nbsp;类型信息
                    <asp:Button ID="Button2" runat="server" Text="返回" CssClass="pure-button tools-button" OnClick="Button2_Click" />
                    <asp:Button ID="Button1" runat="server" Text="保存" CssClass="pure-button pure-button-primary tools-button" OnClick="Button1_Click" />
                </legend>
            </fieldset>
            <div class="pure-g">
                <div class="pure-u-2-3">
                    <asp:Label ID="Label1" runat="server" Text="音乐名称"></asp:Label>
                    <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
                </div>
                <div class="pure-u-2-3">
                       <asp:Label ID="Label2" runat="server" Text="音乐描述"></asp:Label>
                    <asp:TextBox ID="TextBox2" runat="server" TextMode="MultiLine"></asp:TextBox>
                </div>
            </div>
         </div>
    
    </asp:Content>
    
    

    编辑音乐类型界面的后台代码

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    using WebApplication1.BLL;
    using WebApplication1.DAL;
    
    namespace WebApplication1.Admin
    {
        public partial class Edit_MusicType : System.Web.UI.Page
        {
            Genres data;
            protected void Page_Load(object sender, EventArgs e)
            {
               
                int id = Convert.ToInt32(Request.QueryString["id"]);
                OLMSDBEntities oLMSDB = new OLMSDBEntities();
                if (!IsPostBack)
                {
    
               
                  data = oLMSDB.Genres.FirstOrDefault(t => t.GenreId == id);
                TextBox1.Text = data.Name;
                TextBox2.Text = data.Description;
                }
            }
    
            protected void Button2_Click(object sender, EventArgs e)
            {
                string strUrl = "window.location.href='MusicType.aspx'</script>";
                Response.Write(strUrl);
            }
    
            protected void Button1_Click(object sender, EventArgs e)
            {
         //       using (OLMSDBEntities oLMSDB = new OLMSDBEntities())
           //     {
                    string music_Name = TextBox1.Text;
                    string music_Detail = TextBox2.Text;
                    int id = Convert.ToInt32(Request.QueryString["id"]);
                //var genres = oLMSDB.Genres.FirstOrDefault(t => t.GenreId == id);
                //genres.Name = TextBox1.Text;
                //genres.Description = TextBox2.Text;
                bool updateMusicType = MusicType.updateMusicType(id, music_Name, music_Detail);
                    if (updateMusicType)
                    {
                        string strUrl = "<script>alert('修改成功');window.location.href='MusicType.aspx'</script>";
                        Response.Write(strUrl);
                    }
                    else
                    {
                        string strUrl = "<script>alert('修改失败');</script>";
                        Response.Write(strUrl);
                    }
             //   }
            }
        }
    }
    

    然后我的音乐类型增删改查的具体实现方法写在BLL里面了

    下面是增删改查的代码

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using WebApplication1.DAL;
    
    namespace WebApplication1.BLL
    {
        public class MusicType
        {
            public static bool addMusicType(string name, string detail)
            {
                using (OLMSDBEntities oLMSDB = new OLMSDBEntities())
                {
    
                    oLMSDB.Genres.Add(new Genres
                    {
                        Name = name,
                        Description = detail
                    });
                    if (oLMSDB.SaveChanges() > 0)
                    {
                        return true;
                    }
                    else
                    { 
                        return false;
                    }
                }
              
            }
    
            public static bool deleteMusicType(int id)
            {
                using (OLMSDBEntities oLMSDB = new OLMSDBEntities())
                {
                    var gener = oLMSDB.Genres.FirstOrDefault(t => t.GenreId == id);
                    oLMSDB.Genres.Remove(gener);
                    return oLMSDB.SaveChanges() > 0;
                }
    
            }
    
            public static bool updateMusicType(int id, string name, string detail)
            {
                using (OLMSDBEntities oLMSDB = new OLMSDBEntities())
                {
                    var genres = oLMSDB.Genres.FirstOrDefault(t => t.GenreId == id);
                    genres.Name = name;
                    genres.Description = detail;
                    return oLMSDB.SaveChanges() > 0;
                }
            }
        }
    }
    

    完成效果图如下

    首先是主界面,开始添加音乐类型

    在这里插入图片描述
    输入之后点击确定
    在这里插入图片描述
    提示添加成功,然后就可以返回主界面了
    在这里插入图片描述

    主界面已经有了刚才添加的数据

    在这里插入图片描述

    然后开始编辑

    在这里插入图片描述

    修改之后,点击保存

    在这里插入图片描述

    提示修改成功后,返回主界面,下面是修改后的

    在这里插入图片描述
    下面是删除的效果图

    在这里插入图片描述

    提示删除成功之后,就删除了,下面是效果图
    在这里插入图片描述

  • 相关阅读:
    POJ3255(次短路)
    POJ2831(次小生成树问题)
    POJ1679(次小生成树)
    POJ2230(打印欧拉回路)
    HDU5469(树的dfs)
    JSON.parse()和JSON.stringify()的区别
    jQuery中.bind() .live() .delegate() .on()的区别
    javascript 伪数组和转化为标准数组
    JavaScript中本地对象、内置对象和宿主对象(转)
    获取非行间样式和定义样式(元素)
  • 原文地址:https://www.cnblogs.com/a1439775520/p/13074465.html
Copyright © 2011-2022 走看看