用C#访问oracle数据库。我用的是vs2005自带的数据源导航功能。直接托拽上面的表,用来显示和修改,非常方便。但是,有时候,我想根据一些用户动态输入的值来进行表的搜索(dataSet中表的搜索创建),比如根据用户的一个textBox的值搜索表的内容(在C#中的字串形如:"select * from table1 where id = '"+textBox.Text +"'"),这是我用字串的方式用adapter可以实现搜索,但是,这样显示和更改保存等等的代码都要自己写,不利于开发速度。而这时候我又不知道怎么用导航功能实现(因为导航上给的配置只是些“select * from table1 where id = '1'”这种固定形式的,和我的要求有出入)。不知道导航到底能不能实现这样的功能?如果能,请说明(尽量详细,我是初学者),如果不能,这个时候应该应用什么样的功能或者什么样的形式的代码编程呢?我感觉不应该是满页都是commandString = "select ..."这种形式吧?这种形式非常不方便,不利于管理,代码更新和更改和编写速度都非常慢。望不吝赐教,谢谢!
另外,关于重构的问题,既然两者没有什么区别,代码可以实现的重构你在更改dataSet一样可以实现(dataSet就是一个类啊,只是功能稍稍多了点,并且不用你自己写"select ..." or "update ..." or "delete ... "等等代码而已),你说的100页重构(我用的是WinForm)我暂时没有遇到,不过,既然用类可以做的,更改dataSet类(一个自动生成,一个自己生成)也可以实现啊,为什么dataSet就要更改两三百次呢?你是不是认为我要把每个页面(界面)都放上全新的dataSet?好像么啥必要吧。我再体会下,不过procedure那个我再试试,我用的function多些。C#的配置中要选择什么select,update,insert,delete的procedure还没搞清啥意思再看看其他人咋说~