#c# #dependency-injection #spring.net
#c# #внедрение зависимости #spring.net
Вопрос:
Я получаю следующую ошибку при попытке внедрить мой dao в класс модульного тестирования с использованием spring.
UnitTest.DataAccess.FruitDaoTest.GetAllVitaminC:
SetUp : Spring.Objects.Factory.UnsatisfiedDependencyException : Error creating object with name 'FruitDaoTest' : Unsatisfied dependency expressed through object property 'FruitDao': Set this property value or disable dependency checking for this object.
Вот соответствующий сегмент моего конфигурационного файла spring:
<db:provider
id="DbProvider"
provider="SqlServer-2.0"
connectionString="Data Source=stuff.group.stuff;Initial Catalog=zing;User ID=Marve; Password=stinky" />
<object id="transactionManager" type="Spring.Data.Core.AdoPlatformTransactionManager, Spring.Data">
<property name="DbProvider" ref="DbProvider" />
</object>
<object id="FruitDao" type="FruitBasket.DataAccess.FruitDao, FruitBasket">
<property name="DbProvider" ref="DbProvider"/>
<property name="user" value="apple" />
<property name="pass" value="orange" />
<property name="server" value="pear" />
</object>
Я не очень знаком с spring, поэтому я не уверен, в чем здесь проблема. Есть идеи?
Ответ №1:
Похоже, что ваш тест не использует контекст, в котором вы определили свой компонент FruitDao, тем самым предотвращая его автоматическое подключение… Проверьте методы getContext / ConfigLocations, чтобы убедиться, что вы загружаете ожидаемые XML-файлы.