查询
第一次开始使用ADO.Net,目标是为一个Access数据库里面的一个表建立查询和查询结果的面板。
使用VS2005非常轻松的生成了一个实验原型。非常简单,由DataGridView,Button,TextBox组成。然后为DataGridView新建了一个Access数据源。
现在,VS帮我生成了一大堆代码。能直接运行,显示数据了。
接下来,翻MSDN,大致了解了ADO.Net的数据结构。同时了解到,DataSet数据的更新和修改,必须通过DataAdapter来执行。其属性SelectCommand是选择数据的命令,查询就是修改SelectCommand,然后执行Fill方法。
在TableAdapter里面,_commandCollection[0]在Fill和GetData方法中赋予SelectCommand使用。为了不破坏Wizzard生成的设计代码(Designer.cs),使用partail class方式添加了一个String类型的SelectCommandText属性,该属性用来设定_commandCollection[0].Text即可。代码如下:
public String SelectCommandText
{
Set
{
if(_commandCollection == null)
InitCommandCollection();
CommandCollection[0].Text = value;
}
}
{
Set
{
if(_commandCollection == null)
InitCommandCollection();
CommandCollection[0].Text = value;
}
}
测试代码:修改SelectCommandText属性,然后执行Fill就完成了查询。
问题
1、查询语句的写法不知道在哪里找。我找了本SQL的书凑合着看,不知道一致的部分有多少,忐忑不安的很,还请各位大虾指点。
2、该属性没有异常字符的处理。胡乱写个语句,硬盘就得响半天然后报错。
看到内部对象的初始化和对应属性的处理方法:
1、内部对象的初始化使用方法来封装。
2、为内部对象提供一个属性,在get内保证对象的初始化。
3、其他位置对内部对象的引用,全部通过属性。
小结
.Net真是好,起码能陪我成长几年了。