c# – 为Compact Framework和Full Framework设计数据访问

我们目前有一个使用SQL CE数据的桌面应用程序.我们将ORM层的Entity Framework用于数据库,所有数据访问方法都围绕此构建.

现在,我们必须在Compact Framework上为Windows CE 6.0构建一个较小的缩小版“克隆”,同样使用与桌面版相同的SQL CE数据库设计.问题是紧凑框架不支持实体框架,因此我们被迫以旧式方式访问数据库(ADO.net,数据集等).然而,这导致了我们整个数据访问层的重复,并且对这两个应用程序的维护看起来可能会变成一场噩梦.

理想情况下,我想切换到适用于两个平台的最低公分母 – 我想这意味着使用旧的ADO.net将是要走的路,编译成一个单独的程序集,但我只想询问是否这里有人有任何其他建议,或者可能遇到类似情况? EF有什么好的替代方案可以在紧凑和完整的框架上工作吗?

最佳答案 我们在Windows CE(使用SQLCE支持),桌面(使用SQLCE支持)和
Android(使用SQLite支持)中使用
OpenNETCF ORM,它们使用几乎完全相同的代码.我说“差不多”,因为它们之间的数据存储初始化代码不同(目标文件名,存储它的位置等).您可以非常轻松地添加完整的SQL Server实现 – 它可能是SQLite内容的近1:1副本.我从来没有这样做过,因为我不需要它.

点赞