`
txf2004
  • 浏览: 7077004 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

ASP.NET 常用技巧学习

阅读更多

1.简单数据绑定定

<!--ASP.NET1.xdatabindingexpression-->
<%#DataBinder.Eval(Container.DataItem,"Price")%>
<!--EquivalentASP.NET2.0databindingexpression-->
<%#Eval("Price")%>
<!--XMLdatabinding-->
<%#XPath("Price")%>
2.数据源控件
控件名 控件描述
SqlDataSource 一切支持SQL语句的数据源控件
AccessDataSource Access数据源控件
XmlDataSource XML数据源控件
ObjectDataSource 自行编写组件的数据源控件
SiteMapDataSource页面导航控件的数据源控件
2.1 SqlDataSource关键属性
名称 描述
ConnectionString 连接数据库的连接字符串
SelectCommand 用于执行查询的命令
InsertCommand 用于执行插入的命令
UpdateCommand用于执行更新的命令
DeleteCommand 用于执行删除的命令
DataSourceMode 指定数据源类型是DataSet或DataReader(默认值
=DataSet)
ProviderName 指定供应商(默认值
=SQLServer.NETprovider)
2.2 SqlDataSource 支持通过以下属性进行数据缓存
属性名 描述
EnableCaching 指定是否打开缓存(默认值
=false)
CacheDuration 指定结果被缓存多少妙
CacheExpirationPolicy指定缓存间隔是sliding还是absolute
CacheKeyDependency 使缓存依赖于一个特定键值
SqlCacheDependency 使缓存依赖于一个特定数据库实体
2.3 参数化命令 XxxParameter 类型指定参数来源
名称 描述
SelectParameters 为查询命令指定参数
InsertParameters 为插入命令指定参数
UpdateParameters 为更新命令指定参数
DeleteParameters 为删除命令指定参数
FilterParameters 为过滤器命令指定参数
2.4 XxxParameter 类型
名称 描述
ControlParameter 指定一个源自于控件的参数
CookieParameter指定一个源自于cookie的参数
FormParameter 指定一个源自于表单的参数
ProfileParameter 指定一个源自于profile的参数
QueryStringParameter制定于一个来源于查询字符串的参数
Parameter 为数据源绑定一个参数
SessionParameter 指定一个源自于session的参数
2.5 使用ControlParameter例子
<asp:SqlDataSourceID="Countries"RunAt="server"
ConnectionString
="server=localhost;database=northwind;"
SelectCommand
="selectdistinctcountryfromcustomersorderbycountry"/>
<asp:SqlDataSourceID="Customers"RunAt="server"
ConnectionString
="server=localhost;database=northwind;"
SelectCommand
="select*fromcustomerswherecountry=@Country">
<SelectParameters>
<asp:ControlParameterName="Country"ControlID="MyDropDownList"
PropertyName
="SelectedValue"/>
</SelectParameters>
</asp:SqlDataSource>
<asp:DropDownListID="MyDropDownList"DataSourceID="Countries"
DataTextField
="country"AutoPostBack="true"RunAt="server"/>
<asp:DataGridDataSourceID="Customers"RunAt="server"/>
2.7 调研存储过程例子
<asp:SqlDataSourceID="Countries"RunAt="server"
ConnectionString
="server=localhost;database=northwind;"
SelectCommand
="proc_GetCountries"/>
<asp:SqlDataSourceID="Customers"RunAt="server"
ConnectionString
="server=localhost;database=northwind;"
SelectCommand
="proc_GetCustomers">
<SelectParameters>
<asp:ControlParameterName="Country"ControlID="MyDropDownList"
PropertyName
="SelectedValue"/>
</SelectParameters>
</asp:SqlDataSource>
<asp:DropDownListID="MyDropDownList"DataSourceID="Countries"
DataTextField
="country"AutoPostBack="true"RunAt="server"/>
<asp:DataGridDataSourceID="Customers"RunAt="server"/>
CREATEPROCEDUREproc_GetCustomers
@Countrynvarchar(32)AS
SELECT*FROMCustomers
WHERECountry=@Country
GO
CREATEPROCEDUREproc_GetCustomers
CREATEPROCEDUREproc_GetCountriesAS
SELECTDISTINCTCountry
FROMCustomers
ORDERBYCountry
GO
3.XmlDataSource 使用XML 作为数据源
支持缓存与XSL 转换,只支持查询绑定,不支持更新
<asp:XmlDataSourceID="Rates"DataFile="Rates.xml"RunAt="server"/>
<asp:TreeViewID="MyTreeView"DataSourceID="Rates"RunAt="server"/>
3.1 XmlDataSource的关键属性
名称 描述
DataFileXML 数据文件的路径
TransformFile 含有XSL风格定义的数据文件路径
EnableCaching 指定是否开启cache(默认值=false)
XPathXPath 表达式用来确认数据
CacheDuration 以秒为单位的时间间隔
CacheExpirationPolicy 指定时间间隔是sliding还是absolute
CacheKeyDependency 创建缓存依存于某个键
4. ObjectDataSource
从数据组件绑定数据,提供中间件的数据绑定,使数据访问和UI脱离,两种数据绑定方式
SelectMethod, InsertMethod, UpdateMethod,and DeleteMethod
可选择是否使用缓存,可选择是否使用参数
4.1 ODS 关键属性
ODS关键属性
名称 描述
InsertParameters 指定插入方法参数
UpdateParameters 指定更新方法参数
DeleteParameters 指定删除方法参数
SelectParameters 指定查询方法参数
CacheDuration 缓存间隔时间以秒为单位
SqlCacheDependency 基于某个数据实体的缓存
创建和清除
ObjectDataSource.SelectMethod可以使用静态方法也可以使用一个类的新实例
如果使用实例方法:ODS在每次调用的时候创建一个新实例类必须具有公共的建构函数
使用ObjectCreated和ObjectDisposing元素可以初始化和撤销函数
5.增强的DataGrid 控件
支持复杂的数据单元格类型,包括CheckBoxFields在<Columns> 元素中声明高可定制的用户界面
gridView 列类型:
名称 描述
BoundField 显示数据库中取出的文本
ButtonField 显示按钮
CheckBoxField 使用checkboxes显示一个boolean型变量
HyperLinkField 显示一个超链接
TemplateField 显示一个自定义的HTML模板
CommandField 显示一个查询或者编辑按钮
ImageField 显示一个图片
6. 冲突判定
先入胜利
如果数据在取出之后被改变,则修改失败
UpdateCommand结构构成指定ConflictDetection
=“CompareAllValues”来实现
后入胜利
无论数据是否被修改,该修改都会成功
UpdateCommand结构构成指定ConflictDetection
=“OverwriteChanges”来实现
6.1 先入胜利法则更新
<asp:SqlDataSourceID="Employees"RunAt="server"
ConnectionString
="server=localhost;database=northwind;"
SelectCommand
="selectemployeeid,lastname,firstnamefromemployees"
UpdateCommand
="updateemployeessetlastname=@lastname,firstname=
@firstnamewhereemployeeid=@original_employeeidandlastname=
@original_lastnameandfirstname=@original_firstname"

ConflictDetection
="CompareAllValues">
<UpdateParameters>
<asp:ParameterName="EmployeeID"Type="Int32"/>
<asp:ParameterName="lastname"Type="String"/>
<asp:ParameterName="firstname"Type="String"/>
</UpdateParameters>
</asp:SqlDataSource>
<asp:GridViewDataSourceID="Employees"Width="100%"RunAt="server"
DataKeyNames
="EmployeeID"AutoGenerateEditButton="true"/>
7.错误检测
数据更新后控件调用的事件GridView.RowUpdated,DetailsView.ItemUpdated,SqlDataSource.Updated, etc.
处理“status”的事件,无论数据库是否异常允许数据库异常被处理或者再次抛弃,显示多少数据库行被修改
处理更新错误
<asp:SqlDataSourceID="Employees"RunAt="server"
UpdateCommand
=""OnUpdated="OnUpdateComplete">

</asp:SqlDataSource>

voidOnUpdateComplete(Objectsource,SqlDataSourceStatusEventsArgse)
{
if(e.Exception!=null){
//Exceptionthrown.Sete.ExceptionHandledtotruetoprevent
//theSqlDataSourcefromthrowinganexception,orleaveitset
//tofalsetoallowSqlDataSourcetorethrowtheexception
}
elseif(e.AffectedRows==0){
//Noexceptionwasthrown,butnorecordswereupdated,either.
//Mightwanttolettheuserknowthattheupdatefailed
}
}

分享到:
评论

相关推荐

    asp.net常用技巧

    ### ASP.NET常用技巧详解 ASP.NET是微软推出的一款用于构建动态网页和Web应用程序的框架,其强大之处在于能够提供丰富的工具和技术,使得开发者能够高效、快速地开发出高性能的Web应用。本文将深入探讨几个ASP.NET...

    ASP.NET常用技巧

    本篇文章主要探讨的是 ASP.NET 中的常用技巧,特别是关于用户口令的加密处理。 在网络安全中,用户口令的安全存储至关重要,因为这直接影响到用户的个人信息安全和网站的信誉。ASP.NET 提供了内置的支持来进行口令...

    ASP.NET学习大全

    asp.net常用的javascript经典例子.doc asp.net常用函数表.doc ASP.NET程序中常用的三十三种代码.doc ASP.NET程序中实现校验码图像生成.txt ASP.NET导出EXCEL类.txt ASP.NET导出数据到Excel.txt ASP.NET对IIS中的虚拟...

    ASP.NET文件参考 asp.net asp.net技巧

    本文件参考将深入探讨ASP.NET的核心概念、关键特性和实用技巧。 首先,ASP.NET的核心概念包括Page生命周期、控件事件处理和数据绑定。在Page生命周期中,页面经历初始化、加载、验证、呈现和卸载等阶段,开发者可以...

    ASP.net常用代码(常用技巧备忘).rar

    "ASP.net常用代码(常用技巧备忘)"这个压缩包文件显然是一份关于ASP.NET编程的参考资料,可能包含了一些在实际开发中常见的代码片段和技巧总结。 首先,我们可以从标题中推测,这份资料可能是为了帮助开发者记忆和...

    ASP.NET常用的JS代码

    以下是一些在ASP.NET中常见的JavaScript应用场景和技巧: 1. **DOM操作**:JavaScript可以用于操纵HTML文档对象模型(DOM),添加、删除或修改页面元素。例如,使用`document.getElementById`获取元素,`element....

    asp.net常用代码

    这个压缩包文件"asp.net常用代码.doc"很可能包含了在ASP.NET开发中常用的代码片段和实践技巧。 在ASP.NET中,常见的知识点包括: 1. **网页控件**:ASP.NET提供了多种内置控件,如Label、TextBox、Button、...

    Asp.net使用技巧集锦

    总的来说,这个"Asp.net使用技巧集锦"是一个宝贵的资源库,对于想要提升Asp.Net技能的开发者来说,是不可多得的学习材料。通过深入研究和实践这些技巧,开发者能够更好地应对各种Web开发挑战,创建出更高效、更稳定...

    ASP.NET常用代码

    以上只是ASP.NET开发中的一部分关键知识点,实际的“ASP.NET常用代码”压缩包可能包含了更多实用的示例和技巧,帮助开发者快速解决日常遇到的问题。对于初学者,深入学习并理解这些代码可以帮助他们更快地掌握ASP...

    asp.net开发常用文档

    - ASP.NET调试和性能优化:调试技巧和提高应用性能的方法。 - AJAX支持:了解如何利用jQuery和其他库实现异步更新。 - Web API和RESTful服务:构建API以供其他应用或服务调用。 4. **开发工具** 微软的Visual ...

    asp.net学习资料汇总

    这个“ASP.NET学习资料汇总”显然是一份全面的学习资源集合,涵盖了从基础概念到进阶技巧的多个方面。 在“常用代码”部分,你可以期待找到ASP.NET开发中常用的代码片段,如页面生命周期管理、数据绑定、用户控件...

    asp.net 常用格式化公式

    以上介绍了ASP.NET中几种常用的数据格式化技巧。正确地使用这些格式化方法不仅可以让用户界面看起来更专业,而且还能提高用户体验。在实际开发过程中,开发者可以根据不同的应用场景灵活选择合适的格式化方式。同时...

    ASP.net常用代码

    本文将深入探讨标题中的"ASP.NET常用代码",主要围绕32个ASP.NET开发中的常见方法和技巧,以及C#语言在ASP.NET中的应用。 1. 页面生命周期管理: ASP.NET页面有其特有的生命周期,包括初始化、加载、验证、呈现和...

    Asp.net常用的51个代码.doc

    一些个关于Asp.net的小技巧以及常用的代码

    asp.net学习大全(超全面的资料整合)

    asp.net常用的javascript经典例子.doc asp.net常用函数表.doc ASP.NET程序中常用的三十三种代码.doc ASP.NET程序中实现校验码图像生成.txt ASP.NET导出EXCEL类.txt ASP.NET导出数据到Excel.txt ASP.NET对IIS中的虚拟...

    ASP.NET常用代码总结

    以上只是ASP.NET中的一部分常见知识点,实际的"ASP.NET常用代码总结"可能涵盖更多实用技巧和特定场景的解决方案。这些代码片段对于开发者来说是一份宝贵的参考资料,能够快速解决常见问题,提升开发效率。

    ASP.NET常用三十三种代码

    本文将详细介绍 ASP.NET 中常用的三十三种代码片段,帮助开发者提高效率,优化代码。 1. **打开新的窗口并传送参数**: 当需要在新窗口中打开一个页面并传递参数时,可以使用 JavaScript 的 `window.open()` 函数...

    ASP.net常用代码下载

    ### ASP.NET常用代码知识点 #### 一、打开新的窗口并传送参数 在ASP.NET开发过程中,...以上就是关于ASP.NET常用代码的一些知识点,这些技巧在实际开发过程中非常实用,可以帮助开发者快速实现一些常见的功能需求。

    ASP.NET常用源代码

    ASP.NET是一种基于.NET Framework的服务器端编程模型,用于构建动态Web应用程序。在本文中,我们将深入探讨几个ASP.NET中常见的代码示例,涉及...理解并掌握这些技巧对于开发功能丰富的ASP.NET Web应用程序至关重要。

Global site tag (gtag.js) - Google Analytics