Хорошо, я озадачен кажущейся тривиальной функциональностью.Тип, который не создается корректно с помощью StructureMap (с использованием конфигурации XML)
Как я могу получить StructureMap для инициализации свойств экземпляров типа, извлеченных из контейнера, с использованием конфигурации XML (к сожалению, мне нужно использовать XML)?
Мой текущий код:
Тип и интерфейс:
public interface IMyType
{
decimal MyProperty { get; set; }
}
public MyType : IMyType
{
public decimal MyProperty {get; set; }
}
Инициализация контейнера и извлечения экземпляра код:
ObjectFactory
.Initialize(x => x.AddConfigurationFromXmlFile(@"StructureMap.config"));
IMyType instance = ObjectFactory.GetNamedInstance<IMyType>("Blah");
var myPropertyValue = instance.MyProperty; //expected 1, is actually 0
XML-конфигурации:
<?xml version="1.0" encoding="utf-8" ?>
<StructureMap MementoStyle="Attribute">
<AddInstance
PluginType="MyNamespace.IMyType, MyAssemblyName"
PluggedType="MyNamespace.MyType, MyAssemblyName"
Key="Blah"
Name="Blah
MyProperty="1" />
</StructureMap>
Проверяя вышеуказанное, он работает; вероятно, проблема инициализации контейнера. Исследую. – Ben
Подозреваю, что проблема с типизацией - свойство строки работает, десятичное не ... – Ben