Есть ли способ заставить его работать, используя Microsoft Extensibility Framework (MEF)
Допустим, у меня есть интерфейс
public interface IApplicationSettings
{
string SettingOne { get; }
}
Класс, реализующий этот интерфейс
[Export(typeof(IApplicationSettings))]
public class ApplicationSettings : IApplicationSettings
{
public string SettingOne
{
get
{
return "AAA";
}
}
}
Класс, который связывается с моим интерфейсом как свойство
public class IoCConstructorMef
{
[Import("ApplicationSettings", typeof(IApplicationSettings))]
public IApplicationSettings ApplicationSettings { get; set; }
}
тогда я ожидаю, что моя собственность будет введена здесь:
static void Main(string[] args)
{
IoCConstructorMef cm = new IoCConstructorMef();
//cm.ApplicationSettings - is null
}
Похоже, что в этом случае не происходит инъекций.
Я что-то пропустил или сделал что-то не так?