Strange behavior with multiple termbases - Terminology Provider initialization and settings not being triggered

I am maintaining a custom Terminology Provider plugin for SDL Trados Studio and experiencing an issue with multiple termbase functionality. The plugin works perfectly when only one termbase is defined, but exhibits strange behavior when multiple termbases are configured. Specifically:

  • The CreateTerminologyProvider method in my ITerminologyProviderFactory implementation is not being triggered for subsequent termbases
  • My breakpoints in the provider initialization methods are not being hit when multiple termbases are defined

Has anyone encountered similar issues or can provide guidance on the correct way to handle multiple termbase configurations in a custom Terminology Provider?
Code snippets or implementation examples would be greatly appreciated.

I am using SDL Trados Studio 2022.

Parents
  • Hi , this behavior (the factory’s CreateTerminologyProvider not firing for subsequent termbases) can happen when Studio treats multiple termbases under one provider instance, rather than instantiating the factory for each separately. Without having access to yr code project, here are a few suggestions and checks that may help:

    • If two or more termbases have identical URIs or connection strings, Studio will reuse the same provider instance instead of spinning up a new one.
    • I'd recommend to add simple logging as opposed to just depending on the Breakpoints; depending on how you have impelmented this, it's possible that the breakpoints might be bypassed?
Reply
  • Hi , this behavior (the factory’s CreateTerminologyProvider not firing for subsequent termbases) can happen when Studio treats multiple termbases under one provider instance, rather than instantiating the factory for each separately. Without having access to yr code project, here are a few suggestions and checks that may help:

    • If two or more termbases have identical URIs or connection strings, Studio will reuse the same provider instance instead of spinning up a new one.
    • I'd recommend to add simple logging as opposed to just depending on the Breakpoints; depending on how you have impelmented this, it's possible that the breakpoints might be bypassed?
Children