NH?
CASTLE?
SUBSONIC?
EF?
LINQ TO SQL?
Spring.NET?
IBeat.NET
CSLA.NET?
有没有办法,不用每种数据库都去写一套DataProvide?
求思路!!!!
如果在调用端用SQL的,我不用做了。Connection很容易做到。但是SQL还是无法兼容,你做分页的时候,还要想想究竟用with 、 row_num 、rownum。 用Trim 还是 ltrim+rtrim,。除非你能在SQL一级进行封装。
System.Data.Common.DbProviderFactories.GetFactory()
可以研究下这个方法.
数据库操作的时候全部用接口,然后你写多种数据库的代码,都继承这些接口。。。
用的是 ibatis .net ,是在sqlMap.config 中设置的,可以支持挺多的,主流的应该都支持,它已经提供providers.config 配置文件了。瞎说几句,开发万能框架,愿望挺好,做起来....。开发的时候管理好复杂度,结构清晰应该就差不多了吧,没有必要追求万能通用吧,过犹不及
还是自己根据工厂设计模式编一套吧,做个例子,这样以后可以直接用代码就行了。没有不写代码就完全通用的。所谓的通用,不过是框架帮你把这个通用给实现了而已。还不如自己创造个通用框架呢。算是自己的版权,多好。。。
spring.net + nhibernate 不二之选,懂的自然懂
你自己开发一个provider让各大数据库商都支持就下可以实现你的想法了。