DataPortal.Fetch failed (Network access for Distributed Transaction Manager (MSDTC) has been disabled

DataPortal.Fetch failed (Network access for Distributed Transaction Manager (MSDTC) has been disabled

Old forum URL: forums.lhotka.net/forums/t/3870.aspx


gomaz posted on Thursday, November 08, 2007

 Hi All,

      I am using the CSLA framework for the data access with SQL Server 2005 and we are not using distributed transaction.

      When we  are using this architecture for our local machine it is working fine and our DB is in local machine itself.

      But I am getting the following error in our development server and our DB is in the Network.  

  " DataPortal.Fetch failed (DataPortal.Fetch failed (DataPortal.Fetch failed (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.))) ---> DataPortal_Fetch method call failed ---> DataPortal.Fetch failed (DataPortal.Fetch failed (Network access for Distributed Transaction Manager (MSDT... Procedure Script call failed."

    Please help me out to get rid of it. Your help would be appreciated.
 

Regards

Gomaz

rsbaker0 replied on Thursday, November 08, 2007

The error message itself suggests a corrective action (e.g. use the Component Services Administrative tool to enable DTC for network access..). I'm not sure if this is the only piece of the puzzle that needs fixing, but have you looked into this part of the configuration?

Marjon1 replied on Thursday, November 08, 2007

This message suggests that multiple connections are being created within a single dataportal.fetch method, if you do a search on the forums for MSDTC you'll find several posts relating to this problem.

You need to make sure that only a single connection to the DB is created and opened for any items within that any dataportal_xyz method. Though it was my understanding that this message only appears if you have transaction scope attribute on the method, which the fetch wouldn't normally have.

The reason it works on your machine is probably because it has been enabled at some point and you will not see these errors until you move to another machine. Thus why we have scripts to disable the MSDTC every morning just in case.

Regards,

John Kennison

Copyright (c) Marimer LLC