我是
Linq世界的新手,目前正在探索它.我正在考虑在我的下一个涉及数据库交互的项目中使用它.
从任何我读过的,我认为有两种不同的方式与数据库进行交互:
> Linq到sql
> Linq to DataSet
现在我要工作的产品,不能依赖数据库的类型.例如,它可能与sql Server / Oracle一起部署.
现在我的问题是:
>如果我使用Linq到sql,我只停留在sql Server?
>我想我可以使用Linq到sql Server和Oracle的DataSet.但是如果我将Linq用于DataSet for sql Server(与Linq to sql相比较),我会松动一些东西(易于编程,性能,可靠性等).
解决方法
你是正确的#1 – Linq到sql只会反对sql Server数据库.
如果您想要访问不同数据源的能力(使用不同的提供者),我将与ADO实体框架一起使用.在使用类似POCO的实体方面,您可以获得类似的灵活性,并且可以很容易地扩展更高级/复杂的实现.
在我目前的项目中,我们正在使用Linq到sql,这是很好的,但是我们有很多问题要克服.我发现有时在扩展性方面有点太简单了.我写了一个关于Linq到sql和实体框架here的更好的回应.
关于问题#2 – 我不知道我想回到DataSets. IMHO他们更像是过去的事情,但是如果您有一个具有特定控件(例如Infragistics)的体面工具包,可能会很有用.然而,我发现他们的开销对于快速交易系统来说太贵了.该实现没有Linq到sql或实体框架的一半功能.