Замена отображения для тестов - PullRequest
0 голосов
/ 17 ноября 2011

У меня все NHibernate в одной сборке, и эта сборка загружается в мой сеанс NHibernate для моего приложения, и это прекрасно работает. Однако для моего тестового проекта мне нужно заменить один из файлов сопоставления моих сущностей другим. Как я могу это сделать? Я попытался загрузить отображение сборки, затем добавил замену, которую хотел заменить, но это дало мне ошибку.

Вот мой код сопоставления:

    Configuration _configuration = new Configuration()
      .SetProperty(Environment.ReleaseConnections, "on_close")
      .SetProperty(Environment.Dialect, typeof (SQLiteDialect).AssemblyQualifiedName)
      .SetProperty(Environment.ConnectionDriver, typeof (SQLite20Driver).AssemblyQualifiedName)
      .SetProperty(Environment.ConnectionString, "data source=:memory:")
      .SetProperty(Environment.ProxyFactoryFactoryClass,
                   "NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle")
      .AddAssembly(assemblyContainingMapping);
    _sessionFactory = _configuration.BuildSessionFactory();

Я хочу иметь возможность заменить одно сопоставление сущностей, прежде чем я вызову BuildSessionFactory ().

1 Ответ

1 голос
/ 18 ноября 2011

Зацикливать ресурсы сборки вручную и добавлять все, кроме этого.

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

var mapping = config.GetMapping (typeof (myclass)) // изменить детали отображения

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