我在Compact Framework上运行WinCE应用程序。
使用OpenNETCF.IOC库将DAL实现为IoC服务(仍在主EXE中)。 该层处理POJO类。使用Compact Framework版本的ADO.NET提供程序建立的数据库访问。此版本已弃用,不受支持。
现在我们应该有第二个使用Full Framework在Windows桌面上运行的应用程序。我希望在这两个应用程序之间共享数据访问层。
正如我所提到的,有两种方法:
推荐哪种方式?
答案 0 :(得分:1)
由于您正在使用依赖注入,因此从DAL中提取平台差异并将其隐藏在抽象之后会相当容易。可以将针对该抽象的特定于平台的实现注入到DAL类中。这允许您在CF和FF之间共享CAL C#代码,而无需恢复到条件编译指令。 IMO这种方法不快而脏。
答案 1 :(得分:1)
绝对选择#1。
由于您已经在抽象事物,为什么不抽象DAL使用an ORM that is compatible with both the CF and the desktop并允许您换出数据存储实现?如果能避免陷入与特定数据存储绑定的陷阱。