zoukankan      html  css  js  c++  java
  • 编程实现>ASP.NET 3.5开发范例精讲精析>探讨SqlDataSource控件

    SqlDataSource控件,由四个精微空间构成:

    1,向导。2,属性。3,控件属性代码。4,后台代码。

    1,向导:就是下一步->下一步->完成。

    数据库连接字符串->自定义sql语句或存储过程->指定where语句的参数来源。

    数据库连接字符串->选择表->选择列->配置where语句,orde rby语句,生成insert,update,delete语句->指定where语句的参数来源。(这是图形化操作)

    向导的每一步操作,都会生成控件属性代码。

    2,属性:一张属性列表,然后你配置。

    向导能实现的,属性也能实现,而且实现得更多。 包括缓存,取到值是null或取不到值,数据冲突,DataReader或DataSet,以及视图状态。

    属性的操作,同时生成控件属性代码。

    3,控件属性代码:HTML有源代码,asp.net控件也有源代码。

    4,后台代码: 控件属性代码能实现的,后台代码都能实现,而且实现得更多。比如用SqlDataSource控件,不用数据绑定控件,显示二进制数据的图像。后台代码往往使用SqlDataSource控件的事件,处理各种问题,比如控件属性代码里没声明sql查询语句参数,可在后台代码添加一个sql查询语句的参数。

    -----------------------------------------------------------------

    编程实现>ASP.NET 3.5开发范例精讲精析>探讨SqlDataSource控件>向导>指定参数

    都是sql语句的查询,删除,插入,更新都需要参数,用来定位。参数来源:

    asp.net控件,用户设置文件web.config,查询字符串,会话session,cookie,后台代码自定义参数。

    -----------------------------------------------------------------

    编程实现>ASP.NET 3.5开发范例精讲精析>探讨SqlDataSource控件>属性>CancelSelectOnNullParameter属性

    下拉列表,没选择任何数据,但把所有数据都查出来。

    sql的查询语句需要参数,你给它空字符串,那SqlDataSource控件获取到的参数是null,SqlDataSource就不执行查询语句。

    你要执行的话,设置 CancelSelectOnNullParameter属性为false,然后再改写sql语句。

    -----------------------------------------------------------------

    编程实现>ASP.NET 3.5开发范例精讲精析>探讨SqlDataSource控件>属性>DataSourceMode属性

    DataSourceMode属性有两个选择,一是DataReader,二是DataSet。 DataReader速度快,不支持缓存,分页与动态排序。DataSet支持缓存,分页与动态排序,但速度慢。本质上,DataReader取得的数据不保存在服务器内存,但DataSet会。

    ----------------------------------------------------------------- 

    编程实现>ASP.NET 3.5开发范例精讲精析>探讨SqlDataSource控件>属性>使用FileterExpression属性筛选数据

    把所需数据读出用有两种方式。一,直接在sql查询语句设定where=什么就好。二,sql查询语句是所有都查出来,用FileterExpression属性筛选。所以第二种方式,要DataSet,缓存,参数。

    第二种方式的优点就是:频繁筛选其他条件,速度快。但如果不筛选其他条件,显然浪费速度。

    -----------------------------------------------------------------

    编程实现>ASP.NET 3.5开发范例精讲精析>探讨SqlDataSource控件>后台代码>处理sql命令执行错误

    人在江湖飘,哪有不挨刀。程序也不例外。如何捕捉 SqlDataSource控件异常(比如sql语句中查询了不存在的表),只需在SqlDataSource控件的Selected(或者插入,更新,删除语句)事件处理函数里编写异常判断捕捉代码即可。还要告诉编译器,异常已由我自行处理,也就是ExceptionHandled属性设置成true。

    -----------------------------------------------------------------  

    编程实现>ASP.NET 3.5开发范例精讲精析>探讨SqlDataSource控件>后台代码>取消sqldatasource控件的执行

    执行sqldatasource前,验证参数是否符合要求,不符合,则取消执行。

    在后台代码中,在事件中编写代码来判断参数的正确与否。有五种事件,查,增,删,改,筛选(Filtering)


    合乎自然而生生不息。。。
  • 相关阅读:
    Vue路由和组件分别在什么场景使用
    mybatis返回集合对象包含List<String>
    vue登录页+验证码+MD5加密
    mybatis 查询树形结构
    解决Vue Router报错 Error: Cannot find module ‘@/views/xxx‘ at webpackEmptyContext
    HttpServletRequest 在Filter中添加header
    CRM体系中的SFA(SaleForce Automation)应该怎么设计?
    Google Analytics Advertisement 广告 URL : 数据产品知识 UTM
    Win11要的TPM 2.0不一定是独立芯片,你的CPU固件可能已经支持 || 杨澜对话尹志尧:美国顶尖半导体专家华人很多,国内却奇缺
    mysql SQL注入攻击 解决Orm工具Hibernate,Mybatis, MiniDao 的 sql 预编译语句 ;解决非Orm工具JDBCTemplate的
  • 原文地址:https://www.cnblogs.com/samwu/p/1864354.html
Copyright © 2011-2022 走看看