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


    此是一系列博文,最后一篇了。也是面向初学者而作,望你们能有更好,更多对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已经写好存储过程序,发挥一下你的动手能力。

  • 相关阅读:
    warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
    Windows10+CLion+OpenCV4.5.2开发环境搭建
    Android解决部分机型WebView播放视频全屏按钮灰色无法点击、点击全屏白屏无法播放等问题
    MediaCodec.configure Picture Width(1080) or Height(2163) invalid, should N*2
    tesseract
    Caer -- a friendly API wrapper for OpenCV
    Integrating OpenCV python tool into one SKlearn MNIST example for supporting prediction
    Integrating Hub with one sklearn mnist example
    What is WSGI (Web Server Gateway Interface)?
    Hub --- 机器学习燃料(数据)的仓库
  • 原文地址:https://www.cnblogs.com/insus/p/3880606.html
Copyright © 2020-2023  润新知