簡體   English   中英

從 SQL 服務器存儲過程插入 DB2 數據庫成功,但使用實體框架包裝相同的過程失敗

[英]Inserting into DB2 database from SQL Server stored procedure succeeds, but wrapping the same procedure using Entity Framework fails

我需要能夠從 Microsoft SQL 服務器數據庫將行插入到 DB2 數據庫中的一組表中。 我創建了存儲過程,可以使用鏈接服務器將行插入到 DB2 數據庫中,並通過 4 個部分名稱引用目標表。 這些過程有效,我可以通過在 SQL Server Management Studio 中調用它們來插入記錄。

兩個數據庫之間的模式不同,所以我使用 C# 程序和實體框架包裝這些存儲過程來幫助我執行映射。 運行我的程序時,會拋出異常並顯示消息

無法執行操作,因為鏈接服務器“LinkedServer”的 OLE DB 提供程序“IBMDASQL”無法開始分布式事務

運行 SQL 跟蹤並重放由 SQL Server Management Studio 中的實體框架創建的命令在 DB2 中創建所需的記錄。

為了讓這些存儲過程調用從實體框架工作,我在這里缺少什么?

通過在我的數據庫上下文中設置配置屬性解決了我的問題。

db.Configuration.EnsureTransactionsForFunctionsAndCommands = false;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM