作为01年的国家高程,我十多年前做了一些软件项目,都是用Delphi平台快速开发Application项目。今天用C#.net 开发个网站式的决策系统,感觉很不适应。这种不适应性,除了界面设计的不方便性之外,还有点击事件、数据更新方法等方面。与传统的开发方法很太不一样。VS平台虽然提供很多代码自动化、代码自动检测与提示方面的功能,但我还是感觉我们软件人员还是要花很多的时间去处理应用客户端的代码(MVC模型中的V)部分,这样太浪费时间了,与传统的快速开发方法差距太大。基于VS2005的功能,我今天来介绍一下基于NewValues+DataKey的数据修改方法。先来谈一下推荐的原因吧。
用Delphi平台去开发一个面向数据库的应用程序项目很简单,学起来,几天就能学会做项目的代码。那Delphi平台为什么能做到这一点?这与Delphi平台组件中的一个核心技术(看李维出版的那本书)——Delta技术是分不开的。Delphi平台中,一个表格组件与一个存储数据的DataSet相连后,如果在表格组件中加一行数据,DataSet自动在其属性NewData中自动加一行;如果在表格组件中修改一行数据,在Dataset自动在其属性OldData和NewData自动生成相应数据(修改可看成删一行旧数据后再加一行新数据);删除也类似。然后,当更新时,DataSet根据OldData和NewData,自动生成SQL语言,更新到指定的后台DB中。我们的问题是,VS平台中的组件是否有相应的功能?我试了一下,SqlDataSource+GridView时,在不加模板字段和其他表的字段的时间,是能实现这个功能的;但是加了,好像这样好的功能丢失了。然后,我就