Я не уверен, может ли это решить вашу проблему или нет ... в основном, если вы используете nhibernate, то вам лучше использовать свободный nhibernate.который фактически создает прокси-классы, используя POCO вместо отображений hbm.xml, что делает вашу жизнь намного проще для рефакторинга ..
по вашему вопросу о модульном тестировании. Я сам ищу некоторые подсказки для сценариев модульного тестирования .. скажем,Например, если у вас есть студент, принадлежащий к кафедре, вам действительно нужно написать контрольные примеры.Вам не понадобится никакого кода для ручного тестирования из развертывания.это решило бы проблему на данный момент для ручного тестирования, это было бы намного проще, потому что написание тестовых приборов заставляет вас тестировать свой собственный код без ручной проверки
вот пример
[TestFixtureSetUp]
public void CanMapCorrectlyStudent()
{
using (ISession session = PersistanceManager.OpenSession())
{
new PersistenceSpecification<Student>(session)
.CheckProperty(c=>c.Studentid,5)
.CheckProperty(c => c.Name, "John")
.CheckProperty(c=>c.Age , 24)
.CheckReference(c=>c.Department,new Department { Dept_id = 1 , Dept_name="MCA" })
.VerifyTheMappings();
}
}
выСоответствующий пример можно найти в вики nhibernate. Установите testdriven.net для visual studio, щелкните правой кнопкой мыши упомянутое выше тело функции и нажмите Run Test.он автоматически запускает тест, освобождая вас от всех трудностей, связанных с ручным кодированием, и перепроверяет тесты