C# core classes to be used to create adapters