增删查改

小陈解说

首先是打开VS

创建一个ASP.Net Web应用程序

之后正确创建三层架构和正确的添加引用

创建三个类库 Model(数据模型层),DAL(数据访问层),BLL(业务逻辑层)


DAL层引用Model层

BLL引用DAL和Model

web引用BLL以及Model

之后在Model层中正确的添加数据ADO.Net实体数据模型


右键点击Model添加新建项

找到ADO.Net实体数据模型

选择来自数据库的EF设计器

点击下一步来到咱们的数据连接

先点新建连接,然后完成身份验证,找到要连接数据库后点击下一步

然后选择实体框架6.x 继续点击下一步

点开表找到自己要用到的表点击完成

当出现下面这个就是创建成功了


还有一个最重要的是,打开Model层中的App.Config

找到下面代码

<connectionStrings>

<addname="zhiboDBEntities"connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;providerconnectionstring=&quot;datasource=.;initialcatalog=zhiboDB;integratedsecurity=True;MultipleActiveResultSets=True;App=EntityFramework&quot;"providerName="System.Data.EntityClient"/>

</connectionStrings>

然后剪切到web(视图层)的web.onfig文件中就可以啦

接下来就是DAL(数据访问层)

首先在Model层的引用中找到EntityFramework,然后右键,在对象浏览器中查看EntityFramework的路径

然后复制这个路径,在DAL层添加引用,点击浏览,黏贴之前复制的路径,找到EntityFramework和EntityFramework.sqlserver这两个文件,引用就好了。

使用同样的方法在web(视图层)也添加EntityFramework和EntityFramework.sqlserver这两个文件的引用


接下来是在DAL层添加DAO类并开始编写代码


首先我们要实例化MusicEntities

SchoolEntitiesschool=newSchoolEntities();

之后,我们就要开始写方法了

首先是查询,要查询出所有用户,代码如下

publicIEnumerable<Student>Select()

   {

varresult=(fromstuinschool.Student

selectstu).ToList();

returnresult;

   }

我们可能会用到根据Id查询用户,所以我们还要写一个根据Id查询用户的方法

publicStudentSelect(intid)

   {

varstu=(fromstinschool.Student

wherest.Id==id

selectst).FirstOrDefault();

returnstu;

   }

查询之后,我们就要写添加用户的方法了,代码如下

publicintAdd(Studentstudent)

       {

school.Student.Add(student);

returnschool.SaveChanges();

       }

既然有了添加用户的方法,那删除用户的方法肯定也不能少,删除指定用户,代码如下

publicintDelete(intid)

   {

varstud=(fromstinschool.Student

wherest.Id==id

selectst).FirstOrDefault();

school.Student.Remove(stud);

returnschool.SaveChanges();

   }

最后再写一个修改用户信息的方法,代码如下

publicintUpdate(Studentstudent)

   {

school.Entry<Student>(student).State=System.Data.Entity.EntityState.Modified;

returnschool.SaveChanges();

   }

到这,DAL层就写完了,是不是很简单,接下来让我们到BLL层调用方法。

接下来是BLL(业务逻辑层)

BLL层没有很复杂的东西,调用DAO类中我们之前写的方法就行了

首先是实例化DAO

再就行调用,代码如下

privateStuDAOstuDAO=newStuDAO();

publicIEnumerable<Student>Select()

   {

returnstuDAO.Select();

   }

/// <summary>

/// 查询

/// </summary>

/// <param name="id"></param>

/// <returns></returns>

publicStudentSelect(intid)

   {

returnstuDAO.Select(id);

   }

/// <summary>

/// 新增

/// </summary>

/// <param name="student"></param>

/// <returns></returns>

publicintAddStu(Studentstudent)

   {

returnstuDAO.Add(student);

   }

/// <summary>

/// 删除

/// </summary>

/// <param name="id"></param>

/// <returns></returns>

publicintDel(intid)

   {  

returnstuDAO.Delete(id);

   }

/// <summary>

/// 更新

/// </summary>

/// <param name="student"></param>

/// <returns></returns>

publicintUpdate(Studentstudent)

   {

returnstuDAO.Update(student);

   }

    publicintUpdate(intid,stringuname,inttime,stringname)

   {

MusicRms=newMusicR();

ms.id=id;

ms.uname=uname;

ms.time=time;

ms.name=name;

returnmd.Update(ms);

   }

BLL层是最简单代码最少的了,调用一下就好了,是不是很简单

接下来就是视图层了

先添加一个Web窗体

在web窗体中拖入一个GridView控件进去

然后点击设计,在GridView上绑定数据源

如果找不到数据源的话就先把项目生成一下再去绑定数据源就好了


然后把代码补充完整

<div>

<asp:HyperLinkID="HyperLink1"runat="server"NavigateUrl="~/WebForm2.aspx">添加用户</asp:HyperLink>

<asp:GridViewID="GridView1"runat="server"AutoGenerateColumns="False"DataSourceID="ObjectDataSource1">

<Columns>

<asp:BoundFieldDataField="Id"HeaderText="Id"SortExpression="Id"/>

<asp:BoundFieldDataField="Name"HeaderText="Name"SortExpression="Name"/>

<asp:BoundFieldDataField="Age"HeaderText="Age"SortExpression="Age"/>

<asp:BoundFieldDataField="Address"HeaderText="Address"SortExpression="Address"/>

<asp:BoundFieldDataField="StudyDate"HeaderText="StudyDate"SortExpression="StudyDate"/>

</Columns>

<EmptyDataTemplate>

               Id

</EmptyDataTemplate>

</asp:GridView>

<asp:ObjectDataSourceID="ObjectDataSource1"runat="server"SelectMethod="Select"TypeName="BLL.StuService"></asp:ObjectDataSource>

</div>

到这就已经把数据库的数据在web页面上全部展示出来了

接下来继续实行新增添加功能

首先新建一个web页面 用来添加用户

然后把需要添加的数据类型的代码写进去

<div>

<label>姓名</label><asp:TextBoxID="TextBox1"runat="server"></asp:TextBox>

<br/>

<label>年龄</label><asp:TextBoxID="TextBox2"runat="server"></asp:TextBox>

<br/>

<label>地址</label><asp:TextBoxID="TextBox3"runat="server"></asp:TextBox>

<br/>

<label>日期</label><asp:TextBoxID="TextBox4"runat="server"></asp:TextBox>

<br/>

<asp:ButtonID="Button1"runat="server"Text="提交"OnClick="Button1_Click"/>

</div>

然后就开始给button的单机事件编写代码来实习新增功能

    //首先也是先写调用Service

    StudentServicess=newStudentService();

    //然后就可以给button中写入添加方法和添加成功后跳转到主页面

protectedvoidButton1_Click(objectsender,EventArgse)

   {

DateTimedatetiem;

try

       {

datetiem=Convert.ToDateTime(this.TextBox4.Text);

       }

catch

       {

datetiem=DateTime.Now;

       }

Studentstu=newStudent()

       {

Name=this.TextBox1.Text,

Age=Convert.ToInt32(this.TextBox2.Text),

Address=this.TextBox3.Text,

StudyDate=datetiem

       };

intresult=service.AddUser(stu);

Response.Redirect("Firstweb.aspx?msgI="+result);

   }

到这添加功能我们要完成了

接下来就是删除功能了

在控件GridView设计,编辑列 中找到commandField选择里边的删除然后添加,咱们的删除列就出来了


之后在GridView控件中添加DataKeyNames="id"

然后在ObjectDataSource里边添加DeleteMethod="Delete"

在<asp ObjectDataSource>控件中写入

<DeleteParameters>

<asp:ParameterName="id"/>

</DeleteParameters>

到这删除我们也做完了

接下来是修改

修改和删除其实基本上一样一样的

在控件GridView设计,编辑列 中找到commandField选择里边的编辑,更新,取消然后添加,咱们的修改列就出来了

之后在在bjectDataSource中添加UpdateMethod="Update"

然后也是在此控件中间加入

<UpdateParameters>

<asp:ParameterName="id"/>

<asp:ParameterName="uname"/>

<asp:ParameterName="time"/>

<asp:ParameterName="name"/>

</UpdateParameters>

到这修改也就做完了

3

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容