我正在开发一个WPF应用程序,它远程连接MS SQL2008数据库。 应用程序通过Linq-to-SQL与数据库进行通信。非常方便。
但是,由于数据库服务器速度慢,我正在尝试使用本地数据库缓存。
“VS2010>添加项目>本地数据库缓存”向导可能是一个解决方案,但它使用DataSet和SQL Compact(* .sdf)。
我发现Linq-To-SQL无法从SQL COMPACT版本生成类! (当我拖动表格时,弹出错误并说“不支持的数据提供者”)
那么,是否有任何解决方案可以将Linq-to-SQL与本地数据库缓存一起使用?
或是否有使用Linq-to-SQL的数据库同步方法?
答案 0 :(得分:1)
如果您仍想使用sql compact方式,Lightspeed是一个支持各种数据源的linq-to-sql提供程序。它包括mssql compact。
http://www.mindscapehq.com/products/lightspeed
免费版本对于大多数项目来说已经足够了,只有8个模型/类限制。
之前我已经将它用作MySql和Sql Compact的linq提供程序并且它很棒。
您可以看到它支持的所有内容以及它与其他类似现有系统的比较:
http://www.mindscapehq.com/products/lightspeed/comparing-lightspeed
答案 1 :(得分:0)
本地数据库缓存向导仅支持客户端上的SQL Ce。如果您在客户端有SQL Express / SQL Server,则可以使用Sync Framework。
使用Sync Framework查看以下示例/教程:
Synchronizing SQL Server and SQL Express
Database Sync:SQL Server and SQL Express 2-Tier
如果它提到SQLExpress,那就没关系,代码中引用的SQLSyncProvider应该对SQL Express,SQL Server和SQL Azure起作用