Kinetic 2022.1.1 Transaction Scope

Hi Team,

I’ve a BPM which includes IceDataContext.CreateDefaultTransactionScope(). It was working in Kinetic 2021 but after upgrade to Kinetic 2022.1.1, it started throwing elow error:
The type 'TransactionScope' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Transactions.Local'

System.Transactions is already available in reference by default.
image

Regards,
Zoher Ali

4 Likes

Add “using System.Transactions.Local;” or give it the full namespace in your BPM

1 Like

Hi Joshua,

Thanks for the reply. I tried adding using System.Transactions.Local but got error The type or namespace name 'Local' does not exist in the namespace 'System.Transactions' (are you missing an assembly reference?)

Regards,
Zoher Ali

Are you running the .Net 6.0 SDK on your client PC? If not it’s possible it’s namespace confused. My guess is M$ moved it from one version to the next ant that is what you are fighting.

5 Likes

Try just using System.Transactions;

Has anyone found a solution to this? We have some BPMs using variations of this same code that are still working in Kinetic 2022.1.6, but I cannot edit them or they will return that same error.

Install the NET 6 SDK on the client and try in a new bpm so you can confirm before modifying existing ones.

2 Likes

Hi Zoher,
We also getting this error after moving from 2021.2 to 2022.1.

Looking at the marked solution here below, I went to look at the installation guide for the client and saw this official message:

2 Likes

We just did our initial compile after setting up VS2019 and TFS with our C# Solution on our Kinetic Sandbox server. We are getting the same error, the .Local flavor of System.Transactions is not found.

We do not have a System.Transactions.Local DLL we can add as a reference.

We verified we have the .Net 6 (Desktop?) runtime and the 4.8 .Net installed on this machine.

Any insight as to what actually solved this problem?

We are also getting the ImplBase error but one step at a time.

I removed .NET 6 Runtime on my end since its not required and left 4.8 (For Client/Desktop). But I have yet to write up replication steps for support.

Did that resolve the System.Transactions.Local issue?

Did anyone get a resolution to the error…The type ‘TransactionScope’ is defined in an assembly that is not referenced. You must add a reference to assembly ‘System.Transactions.Local’

We recently upgraded to 2022.2.8 in our Pilot environment and have a BPM that is returning this error. I also checked our Production environment which is still at 2022.1.11 and see the same error returns there if I run the “Check Syntax” on the BPM. This error does not seem to impact the BPM as it is still performing the expected function.

We are on the Cloud so there isn’t a .net version to update.
UPDATE: I discovered I did need to install .NET 6 SDK. Once this was installed and I rebooted, the BPM error was resolved when I ran syntax check and validation. Here is the download link for the .NET 6 install…Download .NET 6.0 SDK (v6.0.405) - Windows x64 Installer

1 Like