gpt4 book ai didi

c# - 具有不同数据提供者的一个 POCO 模型

转载 作者:太空狗 更新时间:2023-10-29 23:48:24 26 4
gpt4 key购买 nike

我有一个客户端应用程序(WPF、C#、.net4),它使用通过 SQLITE 提供程序连接的 POCO 实体模型。因此,我希望在 asp.net 项目(使用 MSSQL 提供程序)中拥有来自该项目的相同实体,以便在那里使用我在客户端应用程序中使用的相同实体。我想在我的客户端应用程序 (SQLITE) 和 Web 服务器 (MSSQL) 之间创建某种复制功能,使用相同的 poco 模型使用 Web 服务。

因此,我在两个项目中都引用了我的实体模型,其中包含用于 edmx 文件的不同连接字符串。在这种情况下(因为 edmx 是为 sqlite 提供程序编译的)当我尝试使用 mssql 数据提供程序时,我得到一个异常:

unable to cast System.Data.SqlConnection to System.Data.SQliteConnection

所以我的问题是是否可以在一个实体模型中使用不同的数据提供者?在不同项目中使用相同模型的最佳方式是什么?

最佳答案

如果我正确理解你的问题,那么如果你正在寻找你的 EF 模型来支持多个数据库实现,那么这是不可能开箱即用的。 EF 自动生成的 SSDL 文件将包含提供商特定的元数据,因此将限制其独立于您正在使用的不同数据库实现。

有一些articles那里提供了解决此问题的方法,但这需要为每个提供者提供一份单独的模型副本,并使用提供者详细信息破解生成的 XML。

关于c# - 具有不同数据提供者的一个 POCO 模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4162572/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com