Troubleshooting on TransactionScope
We often met several kinds of errors when using TransactionScope in our applications and some settings are not proper.
Here are some tips on how to resolve these issues.
My scenario is, web application is running on server A, and database used by the web app is running on server B, both servers have firewalls enabled.
First when try to access the web app, I get below exception:
Network access for Distributed Transaction Manager (MSDTC) has been disabled. Please enable DTC for network access in the security configuration for MSDTC using the Component Services Administrative tool.
The error message is obvious, so on server A, I come to Administrative Tools ->Component Services ->right-clicking on My Computer- >Properties->MSDTC, setting it as below:
When I try to access web app again, I get a similar exception shown below:
The partner transaction manager has disabled its support for remote/network transactions. (Exception from HRESULT: 0x8004D025)
This time, I made the same setting with previous step on server B on which the SQL Server is running.
Again, I get another error when access the web application,
Communication with the underlying transaction manager has failed.
When I searched on internet, I realized that because I have firewalls running on both servers, and the MSDTCs need get through them. So I configured the firewalls so that MSDTCs will not be blocked by the firewalls. My firewalls are coming with the windows operating system, so I added the msdtc.exe to the Exceptions tab of the windows Firewall window.
When I access the App, I get the same error as described previously.
It’s really frustrating, after some investigations, I modified the hosts file under C:\WINDOWS\system32\drivers\etc on database server by adding 192.168.1.121 test-server in it, the IP is the web server’s IP and test-server is the name of the web-server.
This time, everything works fine, problem is resolved.
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步