Publikoval Michal Kočí dňa 24.9.2008 o 21:22 v kategórii .Net
Pokiaľ používate TransactionScope a otvoríte dve spojenia voči jednej databázi v rámci jednej transakcie, naštartuje sa distribuovaná transakcia riadená MS DTC. S distribuovanými transakciami nie je žiaden problém, pokiaľ máte korektne nakonfigurované MS DTC a pokiaľ máte na firewalle otvorené potrebné porty.
Takýto problém sa prejavuje nasledovnými chybovými hláškami:
Postup
V zásade treba spraviť nasledovné, aby ste problém odstránili:
Otvorenie rozsahu portov skriptom
Na firewalle otvorte port 135, ktorý slúži na RPC a teda aj pre MS DTC. Okrem neho otvorte aj rozsah portov, ktoré ste nakonfigurovali v registroch aby boli používané RPC. Keďže vo firewalle ktorý je súčasťou systému nejde pridať rozsah portov, otvoriť ich môžete nasledovným skriptom, čísla 6000 a 7000 nahraďte počiatočným a konečným portom, ktoré ste nakonfigurovali na použitie RPC.
@ECHO OFF ECHO OPENING FIREWALL PORTS FOR /L %%I IN (6000,1,7000) DO NETSH FIREWALL ADD PORTOPENING TCP %%I "RPC - Data (TCP, %%I)" ECHO FINISHED PAUSE
Ak nechceš premeškať príspevky ako je tento, sleduj ma na Twitteri, alebo ak máš RSS čítačku, môžeš sledovať môj RSS kanál.