В соответствии с файлом справки, который поставляется с базой Spring.NET, вы можете ввести зависимость, определенную в локальном файле, с помощью тега idref вместе с атрибутом 'local' ,Проблема Spring.NET с <idref> тегом в config
Я пытался сделать это без успеха и надеялся, что у кого-то есть опыт, чтобы помочь мне.
Ниже у меня есть фрагмент из конфига, где я передаю его как аргумент конструктора, но я попытался установить его как свойство. Оба метода, похоже, дают ту же ошибку.
<object id="theTargetObject" type="TestClassLibrary.TargetObject, TestClassLibrary"/>
<object id="theClientObject" type="TestClassLibrary.ClientObject, TestClassLibrary">
<constructor-arg name="myClass">
<idref local="theTargetObject"/>
</constructor-arg>
</object>
Ошибка при создании контекста 'spring.root': Ошибка при создании объекта с именем 'theClientObject' определено в 'файл [C: \ Test \ TestApp \ Bin \ Debug \ my.config.xml]': Неудовлетворенный зависимость выраженный аргументом конструктора с индексом 0 типа [TestClassLibrary.TargetObject]: Не удалось преобразовать значение аргумента конструктора [theTargetObject] в требуемый тип [TestClassLibrary.TargetObject]: Невозможно преобразовать значение свойства типа [System.String] в требуемый тип [TestClassLibrary. TargetObject] для свойства ''.
Упс, хорошо заметили - я должен был использовать это - http://www.springframework.net/docs/1.2.0-RC1/reference/html/vsnet.html#vsnet-config- раздел :) – gef 2009-01-04 15:43:03