CICS Transaction Gateway .NET applications

The CICS® Transaction Gateway .NET API has been upgraded to support Microsoft 32-bit and 64-bit Windows architectures from a single assembly (IBM.CTG.Client.dll).

The upgraded assembly is included in the ctgredist package in Windows\lib or in <install_path>\lib on a Windows machine with CICS Transaction Gateway installed. The upgraded CICS Transaction Gateway .NET API does not depend on ECI V2 and the upgraded IBM.CTG.Client.dll does not need ctgclient.dll referenced in the PATH.

The behavior of the Gateway trace, ECI timeout, and ECI request extend mode functions is different when compared with earlier versions of CICS Transaction Gateway:
  • Trace from the CICS Transaction Gateway .NET API is written using System.Diagnostics.Trace; the traceFile attribute is no longer used by the CtgTrace switch or corresponding IBM.CTG.Trace.SetTraceFile(string fileName) method. The switch and the method can still be accessed by applications but do not provide any function.
  • The upgraded CICS Transaction Gateway .NET API does not support enabling trace with environment variables.
  • If the value of the IBM.CTG.EciRequest.Timeout property is negative an ArgumentOutOfRangeException occurs.
  • If the value of the IBM.CTG.EciRequest.ExtendMode property is not a defined IBM.CTG.EciExtendMode enumeration an ArgumentOutOfRangeException occurs.

Applications that target Microsoft .NET Framework 3.5 do not require modification; they can be left with their dependency on ctgclient.dll. Alternatively, applications can use assembly redirection to access the upgraded assembly. Assembly redirection is possible either at the application level or the machine level. For an assembly redirection at the machine level using the Global Assembly Cache (GAC), you must install the upgraded assembly, and the publisher policy assembly policy.8.0.IBM.CTG.Client.dll, into the GAC. The assembly and the publisher policy assembly are both located in <install_path>/Windows/lib/policy in the ctgredist package or in <install_path>/lib/policy on a Windows machine with CICS Transaction Gateway installed. For more information see the .NET Microsoft documentation.

For an application level or machine level upgrade, you can optionally add the following code to the application configuration file or machine configuration file:

<configuration>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="IBM.CTG.Client"
          publicKeyToken="4f7d883847d47abe"
          culture="neutral" />
        <bindingRedirect oldVersion="8.0.0.0-8.0.0.9" newVersion="9.0.0.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
</configuration>

If you are using an application that targets Microsoft .NET Framework 4.0, to use the upgraded assembly you must recompile the application.


Information Information

Feedback


Timestamp icon Last updated: Tuesday, 19 November 2013


https://ut-ilnx-r4.hursley.ibm.com/tg_latest/help/topic/com.ibm.cics.tg.doc//ctgunx/ctg_dotnet_apps.html