【问题标题】:LLBL: Can I use the DatabaseGeneric project with multiple DBSpecific projectsLLBL:我可以将 DatabaseGeneric 项目与多个 DBSpecific 项目一起使用吗
【发布时间】:2010-08-11 12:34:31
【问题描述】:

我在 MS SQL Compact 和“常规”MS SQL 2008 的解决方案中使用 LLBL..

我想知道是否可以使用相同的 DatabaseGeneric 项目(由 LLBL 生成)并从针对不同 MS SQL 服务器版本的 2 个 DBSpecific 项目(由 LLBL 生成)引用它? p>

我打算稍后对其进行测试,但是项目依赖项使尝试此操作的成本非常高。尝试失败会浪费时间

如果还有其他我可能会错过的选择,请告诉我!

【问题讨论】:

    标签: c# compact-framework llblgenpro llblgen


    【解决方案1】:

    通过兼容性设置支持不同的 SQLServer 版本。请参阅:http://bit.ly/92ojkL(在线文档)这是配置文件设置,或在代码中,通过调用 DataAccessAdapter.SetSqlServerCompatibilityLevel

    您可以将其设置为 7、2000、2005+、CE Desktop 3 或 CE Desktop 3.5 的兼容模式

    COmpact 框架需要不同的代码,因此不能通过相同的 .NET 代码对其进行寻址,这仅仅是因为它必须针对不同的 mscorlib 进行编译,具有较少的类(必须排除某些代码),因此 DQE 是不同的。

    I.o.w.:我也不明白您为什么要从位于 DB 的紧凑框架中获取普通 .NET 上的数据,因为这是不可能的。如果您考虑 SQL Server 紧凑型桌面,则支持如上所述。所以,是的,它是通用的,但不能传输到另一个 .NET 框架,比如紧凑框架,这是合乎逻辑的,因为它的性质是有限的 api

    【讨论】:

    • 我认为这里的混淆来自(如果我理解正确的话)桌面 PC 上的 SQL CE 与 Windows Mobile 上的 SQL CE 不同的事实。我假设 Shady 想在桌面上使用 SQL CE 作为基于文件的数据库引擎。
    • 实际上,我的情况与 Meligy 描述的一样,我只是想知道是否只有所有接口都位于单独的 dll 中。问题是我已经在为 .Net“常规”框架和 Compact Framework(用于 Windows Mobile 应用程序)使用(生成的)LLBL 项目。但在某些时候,我需要先从 Windows 窗体应用程序访问 CE SQL DB (sdf),然后再将其移动到移动设备。
    • 我正在寻找一种解决方法来使用 CF LLBL 项目来执行此操作,而不是为 SQL CE 桌面版本生成第三次(在我的解决方案中有三对项目听起来有点沉闷我,解决方案已经太大了,更不用说一次又一次“几乎”同一个项目的混乱)
    • CE Desktop db可以使用普通的SQL Server vs.net项目,移动部分可以使用CF vs.net项目。所以你不需要 3,只需要 2。不幸的是,它不能是 1,正如我所说,代码必须针对不同的 .net 版本进行编译,你不能分享,MS 不是那样聪明... :(
    【解决方案2】:

    不幸的是,这不仅仅是因为您可能需要使用的所有接口都在

    SD.LLBLGen.Pro.ORMSupportClasses.CF35
    SD.LLBLGen.Pro.ORMSupportClasses.NET20
    

    喜欢 (SD.LLBLGen.Pro.ORMSupportClasses.)IEntity2IEntityCollection2

    因此,您无法使用adapter.FetchEntity(productsEntity) 获取(例如,紧凑框架)ProductEntity,因为适配器将期望来自SD.LLBLGen.Pro.ORMSupportClasses.NET20IEntity2,而您提供的是实现IEntity2 的适配器来自SD.LLBLGen.Pro.ORMSupportClasses.CF35

    DatabaseGeneric 项目并不是真正的“通用”:D

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-10-01
      • 2023-03-22
      • 1970-01-01
      • 2023-01-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多