在ASP.NET 2.0中操作数据之四十八:对SqlDataSource控(5)

  在这2个事件处理器中我们都要检验e.AffectedRows 属性,如果为0,设置Label控件ConcurrencyViolationMessage的Visible属性为true。特别的,在RowUpdated事件处理器中,我们通过将GridView控件的KeepInEditMode属性设置为true,使其保持在编辑状态。这样的话,通过GridView的DataBind() 方法,将他人已经成功更新的数据显示在编辑状态。

如图9所示,当发生并发冲突时,显示提示信息

/uploads/allimg/200612/1I44cC2_0.gif


图9:当发生并发冲突时,显示提示信息:

总结:

  创建一个应用程序时,当多人同时编辑相同数据的时候,要考虑到并发冲突的问题。在默认情况下,ASP.NET数据Web控件和数据源控件没有采取并发控制。就像我们在本章看到的一样,对SqlDataSource控件使用开放式并发控制还是比较迅速和容易的。通过在UPDATE和DELETE语句里扩展WHERE字句,SqlDataSource能应对绝大部分情况,但就像在“正确处理NULL值”部分探讨的那样,对包含NULL值列的处理有漏洞。

  本章是对SqlDataSource考察的完结篇,接下来的教程继续探讨层次结构以及用bjectDataSource处理数据。

  祝编程快乐!

作者简介

  本系列教程作者 Scott Mitchell,著有六本ASP/ASP.NET方面的书,是4GuysFromRolla.com的创始人,自1998年以来一直应用 微软Web技术。大家可以点击查看全部教程《[翻译]Scott Mitchell 的ASP.NET 2.0数据教程》,希望对大家的学习ASP.NET有所帮助。

您可能感兴趣的文章:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wjwyjf.html