![](/img/trans.png)
[英].NET/C# DB2 for iSeries 'FatalExecutionEngineError' from IBM.Data.DB2.iSeries
[英]How do I get the data provider for IBM DB2 for iSeries?
我正在尝试使用实体框架将我的 .NET 应用程序连接到用于 iSeries 数据库 (v7.2) 的 DB2,但是当我尝试创建 Z20F35E630DAF44DBFA4C3F68F539 时没有看到相应的数据提供程序。 请参阅下面的屏幕截图。
我已经对这个问题进行了一些研究,并且还查看了以前回答的问题,并且我知道我应该安装一些东西来显示该数据提供程序,但我到底应该安装什么? There's NuGet packages available for DB2 that seem to do absolutely nothing, and the one third party provider that I found works only for DB2 Universal, whereas I'm stuck with DB2 for iSeries.
连接 DB2 数据库时,您可能无法使用向导生成 model。 根据我的阅读,不支持诸如代码优先之类的功能,因此我不会在生成器/向导的任何手持操作上屏住呼吸。 我也不会指望 EF Core 支持,尽管其他人可能有连接到 DB2 数据源的相关经验。
这意味着您可能需要手动设置 DbContext 和实体配置。 这并不难,只需为您的 DbContext 提供一个到 DB2 服务器的连接字符串,并首先将其中一个实体设置为 DbSet 以验证您是否可以连接、读取和写入数据库。 通常需要解决的问题是数据类型映射和表之间的任何关系,然后在查询实体时,提供程序可能会限制 Linq 操作的转换方式。
I'd start with: https://www.nuget.org/packages/EntityFramework.IBM.DB2/ and go over the documentation provided here: https://www.ibm.com/support/knowledgecenter/SSEPGG_11.1.0/ com.ibm.swg.im.dbclient.adonet.doc/doc/c0061830.html
在 EF 方面,熟悉EntityTypeConfiguration
以将实体配置为表结构。 (或在 DbContext 上使用OnModelCreating
覆盖。)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.