asp.net因为用了ado.net,习惯了在IDE直接拖 sqlConnection, sqlCommand之类的去窗体,这样固然方便,不过窗体数量一多,如果以后要把sql连接改为access连接,那就要改很多个文件,很麻烦。不知道有没有办法能够像ASP那样 include 一个 conn 的文件就行,而且又不影响在IDE上那些方便的功能(也许include在一个file里面,IDE的属性会不认conn变量..),还有换数据库,那些sqlCommand也要换成OldDbCommand,这样替换也是个大工程。。有没有办法能够简单一点,改一处即可实现sql -> access的转化?

解决方案 »

  1.   

    这个你说像include 一个conn文件一样可以实现,但是你说从SQL一下就变到ACCESS这是不可能实现的,因为ADO。NET在SQL和ACCESS的不同不仅仅是像ASP一样只一个连接字符串不同,他们还有COMMAND
      

  2.   

    还有COMMAND,READER,的不同,所以你想,这样是不可能的。conn文件可以是一个类,里有数据库的连接,这样在每个需要数据库的页都继承这个类,他们就了数据库的conn对象,就跟include一个文件一样,可以调用conn了。
      

  3.   

    asp.net因为用了ado.net,习惯了在IDE直接拖 sqlConnection, sqlCommand之类的去窗体,这样固然方便,不过窗体数量一多,如果以后要把sql连接改为access连接,那就要改很多个文件,很麻烦。---------强烈建议你不要用IDE里面直接拖过来的sql组件..........
      

  4.   

    要面向接口编程而不是实现,其实微软在实现ADO.NET里面的几个核心类的时候都接口定义。
    这种灵活性可以使用工厂方法实现(详细内容可以参考《设计模式》),使用Provider来提供数据服务等,在.NET2.0里面大量的使用了Provider。
      

  5.   

    IDbConnection、IDbCommand就是说I类可能通用,效率不高你可以参考一下,我没这样用过,楼主要检验一下。
      

  6.   

    定义两个类来操作数据库,SQL和Access数据库各一个,除了使用ado.net的类不同之外,返回的结果都是一样的。以后要用哪个就调用哪个。
      

  7.   

    支持 brightheroes(闭关|那一剑的风情) 的建议,^_^