Когда вы получаете экземпляр, вы можете указать ключ.Хотя по умолчанию вы получаете синглтон для каждого типа, он генерирует еще одну кэшированную версию этого типа для каждого ключа.Это означает, что вы можете использовать guid или что-то в качестве ключа для каждого экземпляра, который вам необходим.
Однако есть потенциальная проблема.Если вы получаете 100 разных версий, то все они находятся в памяти на весь срок службы вашего приложения.
Вы, вероятно, в порядке, если это будет только несколько экземпляров.
Большеи вам, вероятно, лучше всего использовать более сложный контейнер di.SimpleIoC предназначен только для простых случаев использования.
Однако при получении экземпляра вы можете использовать фабричный метод.Это не в моем вкусе, но если вы действительно хотели использовать simpleioc, то это то, что нужно учитывать.
Вы можете прочитать больше о Лоране Буньоне здесь.
https://msdn.microsoft.com/en-us/magazine/jj991965.aspx