此是一系列博文,最后一篇了。也是面向初学者而作,望你们能有更好,更多对ASP.NET面向对编程了解与认识。

前一篇中《ASP.NET开发,从二层至三层,至面向对象 (4)http://www.cnblogs.com/insus/p/3837898.html 中,Insus.NET让大家了解到无需再写SQL语句,只管传入字段,或值,或条件,文中虽然列举了一些例子,但还可以任凭发挥与扩展。

Insus.NET在第三篇《ASP.NET开发,从二层至三层,至面向对象 (3)http://www.cnblogs.com/insus/p/3826706.html中,还实现了结合SQL Server的参数与存储过程类BizBaseSQLSp.cs。

此就是针对这个类别来实作应用,因为网友来信息谈及,是否有一个例子来演示怎样使用这个类。从最基本的开始。在数据库创建一个表,然后为这个表进行添加,编辑,更新或理删除等操作。

为了尽量演示这个类的所有public的方法或是函数,Insus.NET尽量详细地介绍与说明。

先开发数据库,创建一张表[dbo].[Employee],设计了三个字段。主键字段为[Work_nbr],数据类型为NVARCHAR,存储字符。

创建一个添加数据的存储过程[dbo].[usp_Employee_Insert]:

传入三个参数,在主体代码中,先要判断的主键是否存在,如果不存在,才添加记录。

创建一个存储过程[dbo].[usp_Employee_Getall],是获取所有该表的记录:

创建一个删除的存储过程[dbo].[usp_Employee_Delete],删除记录:

创建一个带条件获取某笔记录的某个字段值的存储过程[dbo].[usp_Employee_GetNameByNumber],以传入主键获取Scalar值。

以下的存储过程[dbo].[usp_Employee_IsExisting],是判断某个条件某笔记录是否已经存储表中:

最后一存储过程,是更新的存储过程[dbo].[usp_Employee_Update]

设计好了数据库,再加上上次写好的《ASP.NET开发,从二层至三层,至面向对象 (3)http://www.cnblogs.com/insus/p/3826706.html中,还实现了结合SQL Server的参数与存储过程类BizBaseSQLSp.cs。我们就可以利用这个逻辑来创建一个对象,这个对象名,一般以数据表名来命名,数据库中,每张表就可以实现一个对象。

分层开发,一些人设计与开发数据库,一些人开发逻辑层各个对象。下面是前端网页。创建一个aspx网页。在网页实现添加记录的功能:

在.aspx.cs实现ButtonAdd_Click事件:

接下来,实现呈现数据表的数据,也就是说,现示用户添加的记录,在网页中,拉一个GridView控件:

后台绑定GridView控件:

继续编写,我们需要实现一个删除记录的功能,也就是说,在GridView控件,点一点删除,能对GridView所被点击的记录删除。在GridView控件中,添加下面高亮部分html markup:

现在,我们在.aspx.cs实现删除的程序:

看看刚才实现的效果,是否有异常或理错误出现:

为了能对BizBaseSQLSp其它方法或是函数的应用,下面添加一文本框,输入工号,获取该工号对的的雇员名字:

下面是ButtonGet_Click事件程序,获取标量Scalar值:

不管是前端的javascript还是后台开发,均是一个功能,一个事件,对应实现。分清对象与思路。

再实一个功能,就是使用SqlDataReader来判断记录是否已经存,其实在添加记录时,Insus.NET写到的存储过程,就可以一步到步,先判断是否有存储,存在的话,return。

这只是html markup,你需要写Button1_Click事件,才能让这个功能能生动:

再来看看这个功能的实时演示操作:

就写到这里吧。有关编辑与更新,Insus.NET已经写好存储过程序,发挥一下你的动手能力。

ASP.NET开发,从二层至三层,至面向对象 (5)的更多相关文章

  1. ASP.NET开发,从二层至三层,至面向对象 (4)

    继续上一篇<ASP.NET开发,从二层至三层,至面向对象 (3)>http://www.cnblogs.com/insus/p/3826706.html .我们更深层次学会了逻辑层对象,即 ...

  2. ASP.NET开发,从二层至三层,至面向对象 (3)

    继续上一篇<ASP.NET开发,从二层至三层,至面向对象 (2)>http://www.cnblogs.com/insus/p/3825805.html .我们学会了怎样创建对象,把Biz ...

  3. ASP.NET开发,从二层至三层,至面向对象 (2)

    继续上一篇<ASP.NET开发,从二层至三层,至面向对象>http://www.cnblogs.com/insus/p/3822624.html .我们了解到怎样把自己的程序由二层变为三层 ...

  4. 【ASP.NET开发】.NET三层架构简单解析

    对于三层架构来说,主要是使用设计模式的思想,对于项目的各个模块实现"高内聚,低耦合"的思想.这里就不做详细的介绍了,如果大家有兴趣,可以阅读软件工程和设计模式相关文章. 对于三层架 ...

  5. ASP.NET开发,简化与封装

    ASP.NET开发,简化与封装 微软的ASP.NET的开发,就是面向对象的编程,当然前端也能体验至面向对象的话,使用Web控件也必须的. 任一控件,我们均可以在后端.aspx.cs或.aspx.vb程 ...

  6. 专门为ADO二层升三层的咏南中间件(特种用途)

    专门为ADO二层升三层的咏南中间件(特种用途) 演示下载:链接: https://pan.baidu.com/s/1bulGBIZ6A1nkeErxIrGsGA 密码: 22dk 解压后运行ynmai ...

  7. 为方便二层升三层新增的远程方法QuerySql6()

    为了方便原来D6,D7开发的二层老程序升级为三层,新增了远程方法QuerySql6().充分地兼容原来二层SQL的写法. 1)公共方法ParamsToStr() function ParamsToSt ...

  8. DELPHI7 ADO二层升三层新增LINUX服务器方案

    DELPHI7 ADO二层升三层新增LINUX服务器方案 引子:笔者曾经无数次在用户的LINUX服务器上创建一个WINDOWS虚拟机,用于运行自己DELPHI开发中间件. 现在再不需要如此麻烦了. 咏 ...

  9. 下一代Asp.net开发规范OWIN(1)—— OWIN产生的背景以及简单介绍

    随着VS2013的发布,微软在Asp.Net中引入了很多新的特性,比如使用新的权限验证模块Identity, 使用Async来提高Web服务器的吞吐量和效率等.其中一个不得不提的是OWIN和Katan ...

随机推荐

  1. Android-Java单例模式

    今天我们来说说一个非常常用的模式,单例模式,单例模式让某个类中有自己的实例,而且只实例化一次,避免重复实例化,单例模式让某个类提供了全局唯一访问点,如果某个类被其他对象频繁使用,就可以考虑单例模式,以 ...

  2. deeplearning 源码收集

    Theano – CPU/GPU symbolic expression compiler in python (from MILA lab at University of Montreal) To ...

  3. UPDATE语句中SET部分列赋值的先后顺序有影响么?

    昨天研发同事问我个问题,UPDATE语句中SET部分列赋值的先后顺序会影响结果么?以前没考虑过这个问题,因为通常我们都会UPDATE时给列赋予一个确定的值,而不是一个依赖于其他列的值. 测试环境: D ...

  4. .net图表之ECharts随笔06-这才是最简单的

    今天搞柱形图的时候,发现了一个更简单的用法.那就是直接使用带all的那个js文件 基本步骤: 1.为ECharts准备一个具备大小(宽高)的Dom 2.ECharts的js文件引入(echarts-a ...

  5. EMACS快捷键

    C = Control M = Meta = Alt | Esc Del = Backspace 基本快捷键(Basic) C-x C-f "find"文件, 即在缓冲区打开/新建 ...

  6. 【LA3485】 Bridge

    前言 哈哈哈,垃圾微积分哈哈哈 前置知识:自适应Simpson法与微积分初步,学会编程 Solution 考虑一下我们有的是什么: 一段桥梁的横向距离,悬线的长度,以及高度. 我们发现如果我们重新设一 ...

  7. [海外干货] BlackHat 2017 首日议题的所有 PPT以及材料

    今年是 Black Hat 举办的第 20 个年头,高温酷暑也挡不住全世界黑客和安全人员奔赴拉斯维加斯的热情.毕竟这可是一年一度的盛大狂欢啊.今年的 BHUSA 从美国东部时间时间 7 月 22 日( ...

  8. 阿里云RDS数据库备份文件恢复到本地数据库

    参考这里:https://help.aliyun.com/knowledge_detail/41817.html 第4.2步要多注释掉一些(应该根据实际报错来注释): [mysqld] innodb_ ...

  9. 利用Makefile安装helloworld模块(速成)

    这学期对了一门操作系统,满怀着好奇装了虚拟机然后安了Ubuntu,这周作业是编译内核和安装个模块,妈耶,折腾了我一两天.终于弄完,CSDN上有挺多类似的教程,例如陈皓的跟我一起写Makefile,写的 ...

  10. AndroidStudio打包apk,安装出现签名冲突--解决办法

    Android UiAutomator2项目部署到jenkins上,实现自动打包,并自动push&安装到设备上 遇到问题: 可成功实现自动打包并push到设备上后,install -r 的时候 ...