VS2010 + NUnit не удается загрузить сборки? - PullRequest
3 голосов
/ 11 августа 2010

Я использую VS2010, C # 4.0, NHibernate и NUnit в проекте, над которым я работаю .. При выполнении тестов базы данных я столкнулся с странной проблемой .. Когда я запускаю свои тесты, nunit-agent.exe падает без видимых причина .. С тех пор я обнаружил, что когда я отлаживаю свои тесты, я получаю следующее исключение в методе TestFixtureSetup:

TypeInitializationException: тип инициализатор для 'NHibernate.ByteCode.Castle.ProxyFactory' бросил исключение. Не удалось загрузить файл или сборку «Castle.DynamicProxy2, Версия = 2.1.0.0, Культура = нейтральная, PublicKeyToken = 407dd0808d44fbdc 'или одна из его зависимостей. Расположенный определение манифеста сборки делает не совпадает со ссылкой на сборку. (Исключение из HRESULT: 0x80131040) ":" Castle.DynamicProxy2, Версия = 2.1.0.0, Культура = нейтральная, PublicKeyToken = 407dd0808d44fbdc

Теперь мне кажется, что то, что он ищет, идентично тому, которое он нашел?

Я дважды проверил, и сборка упоминается в тестовом проекте. Я также пытался прочитать ссылку, но безрезультатно. Есть идеи?

ОБНОВЛЕНИЕ2: Я попытался изменить целевую платформу на .net 3.5 всех моих проектов, и теперь все тесты завершаются с ошибкой выше.

ОБНОВЛЕНИЕ: Некоторые тесты работают, другие нет .. У меня есть класс клиента:

public class Customer : IEntity<string>
{
  private readonly string id;
  public virtual string Id
  {
    get { return id; }
  }

  public virtual string Name { get; set; }
  public virtual Address Address { get; set; }
}

Там, где тесты проходят отлично. Однако тесты для моего класса продуктов:

public class Product : IEntity<string>
{
  private readonly string id;

  public virtual string Name { get; set; }
  public virtual decimal Price { get; set; }

  public virtual string Id 
  {
    get { return Id; }
  }
}

Не работает (я получаю исключение из ранее) .. И забавно то, что в тестах для обоих классов используется один и тот же базовый класс, который содержит весь код доступа к базе данных.

1 Ответ

2 голосов
/ 11 августа 2010

Я решил проблему .. Кажется, Nhibernate искал DynamicProxy 2.1.0, в то время как я ссылался на 2.1.1 ..

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...