Здравствуйте, Курилка, Вы писали:
К>Довольно странное утверждение...
К>Какой смысл вообще в stateless синглтоне? Чем он отличается от статик-методов?
Уже писал: отложенная инициализация + реализация интерфейса.
К>Или Instance — property, которая реализует фабрику?
Как вариант. Сделать
Singleton<IMyService>.Instance;
и возвращать разные реализации IMyService в зависимости от того находимся ли мы в режиме тестирования или нет.
Учитывая специфику задачи (нам нужен compile-time полиморфизм) я бы предпочёл в 90% случаев ограничиться условной компиляцией.