Я пробую возможность автоматического сопоставления в Fluent NHibernate, и тот же код, который работал с явными ClassMap
конфигурациями, не работает при создании SessionFactory
, когда я пытаюсь переместить его на автоматическое сопоставление.
Вот код:
public static ISessionFactory GetSessionFactory()
{
if (_sessionFactory == null)
{
_sessionFactory = Fluently.Configure()
.Database(MsSqlConfiguration.MsSql2008.ConnectionString(c => c.FromConnectionStringWithKey("DB")))
// It works with the following:
// .Mappings(m => m.FluentMappings.AddFromAssemblyOf<Customer>())
// It fails with this:
.Mappings(m => m.AutoMappings.Add(AutoMap.AssemblyOf<Customer>()))
.BuildSessionFactory();
return _sessionFactory;
}
Я получаю следующую ошибку:
При создании SessionFactory использовалась недопустимая или неполная конфигурация. Проверьте коллекцию PotentialReasons и InnerException для получения дополнительных сведений.
Я получаю Count = 0
для PotentialReasons
, и внутреннее исключение такое же, как указано выше.
Трассировка стека относится к:
в FluentNHibernate.Cfg.FluentConfiguration.BuildSessionFactory () в d: \ Builds \ FluentNH-v1.x-nh3 \ src \ FluentNHibernate \ Cfg \ FluentConfiguration.cs: строка 113
Похоже, я перепробовал все, чтобы заставить его работать, и ближе всего к тому, что я подошел, была инициализация только для того, чтобы получить Could not find persister for...
ошибку, когда я пытался использовать сеанс, и я даже не помню, как я смог чтобы это произошло.
Я использую сборку № 694 с NHibernate 3.0, база данных SQL 2008. Есть идеи, что я делаю не так?
CustomType(typeof(MyEnum))
, но мне нужно посмотреть, как это возможно при автоматическом сопоставлении ... - person Josh Anderson   schedule 28.03.2011