Я использую StructureMap для IoC, сейчас получаю конфигурацию из App.Config, например так:
public class ImplementationFactory
{
private static volatile ImplementationFactory Factory;
private static object syncRoot = new Object();
private ImplementationFactory()
{
}
public static ImplementationFactory Instance
{
get
{
if (Factory == null)
{
lock (syncRoot)
{
if (Factory == null)
{
Factory = new ImplementationFactory();
}
}
}
return Factory;
}
}
Programmer prog;
public Contracts.IImplementation GetImplementation()
{
if (this.prog == null)
{
ObjectFactory.Initialize(x => x.PullConfigurationFromAppConfig = true);
prog = ObjectFactory.GetInstance<Programmer>();
}
return prog.Implementation;
}
}
[Pluggable("Default")]
[PluginFamily("Default")]
internal class Programmer
{
public readonly Contracts.IImplementation Implementation;
public Programmer(Contracts.IImplementation Implementation)
{
Implementation = Implementation;
}
}
сейчас вместо предоставления двух имен сборок с помощью App.Config. Я хочу просто предоставить их с помощью кода, подобногоиз переменных, любая идея, как я могу изменить свой код, чтобы сделать это?