.NET Based OPC UA Client/Server SDK  3.2.3.527
Migration guides

Common notes

This documentation is not complete and will be updated later.

Migration from SDK 2.x to 3.2

  • Remove referenced Unified Automation assemblies and add the distributed packages
    • UaBase
    • UaBase.Windows
    • UaClient (for client applications)
    • UaServer (for server applications)
  • Replace calling new UaClient.Session() by new UaClient.Session(ApplicationInstance.Default).
  • Replace XmlElement by XmlString when using the DataType for DataValues.
  • Replace Utils.GetDefaultIcon by GuiUtils.GetDefaultIcon.
  • Remove EventHandler MissingHttpsCertificate.
  • If the ApplicationSettings are set in code, then replace UaSchema.SecuredApplication by ConfigurationInMemory.
  • Certificate Store path in default configuration changed to %CommonApplicationData%\defaultOrganisationName\CertificateStores\pki\.
  • Trace path in default configuration changed to %CommonApplicationData%\defaultOrganisationName\Logs\.
  • The method SecurityUtils.LoadCertificate (string storeType, string storePath, string subjectName, string thumbprint, bool needPrivateKey) has been removed.
    Create a certificate store with SecurityUtils.CreateStore and call ICertificateStore.Find instead.
  • Add TimestampsToReturn method argument to history read methods, if implemented.
  • The UserAccessMask values have been changed from type PermissionType to PermissionTypeDataType due to the implementation of RoleConfiguration.
    If NodeAccessInfo was used so far, please check if the UserAccessMask enum values are still valid in your use case.
    If not, there are also serveral methods in the NodeAccessInfoUtils class for converting from PermisisonDataTypeData to PermissionType.

Migration from SDK 3.0.x to 3.2.x

  • Application configuration moved to ApplicationInstanceBase
  • Set the type of the UaApplicationConfiguration in app.config to "UnifiedAutomation.UaBase.ApplicationConfigurationSection,UnifiedAutomation.UaBase" (remove ".Windows").
  • Certificate Store path in default configuration changed to %CommonApplicationData%\defaultOrganisationName\CertificateStores\pki\.
  • Trace path in default configuration changed to %CommonApplicationData%\defaultOrganisationName\Logs\.
  • Add TimestampsToReturn method argument to history read methods, if implemented.
  • The UserAccessMask values have been changed from type PermissionType to PermissionTypeDataType due to the implementation of RoleConfiguration.
    If NodeAccessInfo was used so far, please check if the UserAccessMask enum values are still valid in your use case.
    If not, there are also serveral methods in the NodeAccessInfoUtils class for converting from PermisisonDataTypeData to PermissionType.

Migration from SDK 3.1.x to 3.2.x

  • Add TimestampsToReturn method argument to history read methods, if implemented.
  • The UserAccessMask values have been changed from type PermissionType to PermissionTypeDataType due to the implementation of RoleConfiguration.
    If NodeAccessInfo was used so far, please check if the UserAccessMask enum values are still valid in your use case.
    If not, there are also serveral methods in the NodeAccessInfoUtils class for converting from PermisisonDataTypeData to PermissionType.

Migration of applications based on .NET Framework to .NET Core

  • Change framework to .NET Core 2.0 or later.
  • Remove all dependencies to System.Windows.Forms.
  • Remove package UaBase.Windows.
  • Add package UaBase.BouncyCastle.
  • Replace occurances of ApplicationInstance by ApplicationInstanceBase. Only use the functionality of ApplicationInstanceBase.