可以LINQ to SQL用于其他数据库(MySQl,Oracle等)

问题描述:

我有项目使用WPF创建和数据库O/RM使用LINQ to SQL,当我完成我的项目时有些人想使用MySQL作为数据库,所以我可以改变我的LINQ到MySQL没有改变任何代码(也许只是更改连接字符串)可以LINQ to SQL用于其他数据库(MySQl,Oracle等)

问候

+0

不要忘记标记你最喜欢的答案。 – Steven 2010-11-21 16:48:07

你就是不行。开发LINQ to SQL作为O/RM工具*仅用于与SQL Server数据库一起使用,而Microsoft将在未来添加多数据库支持,而不是而不是。当你想要这个并需要下降的LINQ支持时,你最好用Microsoft Entity Framework。


** C#团队确实将LINQ to SQL设计为多数据库。当您查看Reflector中的System.Data.Linq组件时,仍然可以看到此设计。然而,出于'某些'原因(阅读:营销),微软决定不允许在LINQ to SQL上使用多数据库支持。 LINQ to SQL使用的提供者模型已内化。虽然从理论上讲,当应用程序完全信任时,仍然可以为其他数据库创建一个备用提供程序;这样做非常困难和痛苦,以至于我从来没有见过任何人尝试过。正如我所说,当多厂商支持是您的应用程序的需求时,您应该使用专为此设计的O/RM工具。*

您需要3.派对支持。 http://www.devart.com销售各种数据库的数据库驱动程序,包括实体和LINQ to SQL支持。还有http://code.google.com/p/dblinq2007/http://www.alinq.org/