问题 是否可以将Entity Framework与DB2 iSeries AS / 400一起使用


我是Microsoft实体框架的新手,并想知道是否可以将此框架与DB2 iSeries AS / 400一起使用?使用这种“遗留系统”时是否存在任何问题?和EF框架?


12557
2017-12-28 12:43


起源



答案:


您可以使用Entity Framework以三种方式之一连接到ISeries DB2数据库:

1。 如果您购买了IBM DB2 Connect产品的许可证。许可证大约12,000美元,这是令人发指的。此外,没有足够好的文档来说明DB2 Connect产品的实际工作方式,安装方式或可能的好处。我已经联系了他们的一个经销商进行测试安装,这不是一个直观的过程,所以我们从未购买过该产品。同样,似乎没有任何演示。我不明白IBM如何拥有最好的服务器之一,但不要反过来向Microsoft开发人员利用他们的产品。

也就是说,如果您研究这个主题,您会发现很多信息表明您可以使用他们的ADO.Net数据服务器提供商使用Entity Framework。我走了这条路,但我会警告你,他们的数据服务器提供程序仅在安装DB2连接时才有效。这很令人困惑,因为IBM宣称这种能力,但并不经常显示两种产品之间的直接关联,所以你常常认为它可以在没有db2连接的情况下工作,而目前它不会。

2。 购买为Entity Framework设计的第三方数据提供程序。 Progress软件的Data Direct非常易于使用。我不喜欢他们的服务器许可如何工作,因为他们的服务器许可证是您的应用服务器的每个核心处理器。这是有缺陷的,因为这假设您实际上只有一个应用服务器,人们经常需要使用不同的应用服务器来实现负载平衡。我希望他们只是每个ISeries服务器许可。但是,如果您决定这样做,则可以为每个用户购买许可证。

3。 编写自己的数据提供者。这是可能的,但存在明显的缺点。


12
2018-02-08 17:46



这仍然是这种情况吗?或者自从写完以来有所改进? - Tim Coker
蒂姆,是的,除了一个例外情况仍然如此。市场上还有另一个竞争对手,它允许您将实体框架连接到ISeries,它们被称为HIT软件。他们的定价与Progress Data Direct相比,但如果您有谈判技巧,您可以获得比标准费率更低的价格。 HIT软件的版本叫做Ritmo。
有趣的是 - 学习EF时无法帮助其“代码优先”结构与DDS物理和逻辑定义之间建立关联。从AS / 400定义创建实体代码似乎比从另一个方向创建实体代码更容易,可能是因为我已经熟悉AS / 400,但更多的EF结构可能没有AS / 400的相似之处。 - Richard Evans


答案:


您可以使用Entity Framework以三种方式之一连接到ISeries DB2数据库:

1。 如果您购买了IBM DB2 Connect产品的许可证。许可证大约12,000美元,这是令人发指的。此外,没有足够好的文档来说明DB2 Connect产品的实际工作方式,安装方式或可能的好处。我已经联系了他们的一个经销商进行测试安装,这不是一个直观的过程,所以我们从未购买过该产品。同样,似乎没有任何演示。我不明白IBM如何拥有最好的服务器之一,但不要反过来向Microsoft开发人员利用他们的产品。

也就是说,如果您研究这个主题,您会发现很多信息表明您可以使用他们的ADO.Net数据服务器提供商使用Entity Framework。我走了这条路,但我会警告你,他们的数据服务器提供程序仅在安装DB2连接时才有效。这很令人困惑,因为IBM宣称这种能力,但并不经常显示两种产品之间的直接关联,所以你常常认为它可以在没有db2连接的情况下工作,而目前它不会。

2。 购买为Entity Framework设计的第三方数据提供程序。 Progress软件的Data Direct非常易于使用。我不喜欢他们的服务器许可如何工作,因为他们的服务器许可证是您的应用服务器的每个核心处理器。这是有缺陷的,因为这假设您实际上只有一个应用服务器,人们经常需要使用不同的应用服务器来实现负载平衡。我希望他们只是每个ISeries服务器许可。但是,如果您决定这样做,则可以为每个用户购买许可证。

3。 编写自己的数据提供者。这是可能的,但存在明显的缺点。


12
2018-02-08 17:46



这仍然是这种情况吗?或者自从写完以来有所改进? - Tim Coker
蒂姆,是的,除了一个例外情况仍然如此。市场上还有另一个竞争对手,它允许您将实体框架连接到ISeries,它们被称为HIT软件。他们的定价与Progress Data Direct相比,但如果您有谈判技巧,您可以获得比标准费率更低的价格。 HIT软件的版本叫做Ritmo。
有趣的是 - 学习EF时无法帮助其“代码优先”结构与DDS物理和逻辑定义之间建立关联。从AS / 400定义创建实体代码似乎比从另一个方向创建实体代码更容易,可能是因为我已经熟悉AS / 400,但更多的EF结构可能没有AS / 400的相似之处。 - Richard Evans


它有点像 - 看到这里:

http://publib.boulder.ibm.com/infocenter/db2luw/v9r5/topic/com.ibm.swg.im.dbclient.adonet.doc/doc/c0054118.html?resultof=%22%65%6e%74 %69%74%79%22%20%22%65%6E%74%69%74%69%22%20%22%66%72%61%图6d%65%77%1207%72%6B%22 %20

但老实说,我不是百分百肯定 - 特别是如果它支持EF 4.0(还)。

或者看看 IBM DB2Connect 网站和从那里搜索...


0
2017-12-28 15:23