Как использовать свободные компоненты Nhibernate - PullRequest
1 голос
/ 14 марта 2012

Я пытаюсь использовать компоненты в беглом nhibernate и получаю следующее сообщение об ошибке.

FluentNHibernate.Cfg.FluentConfigurationException: при создании SessionFactory использовалась неверная или неполная конфигурация.Проверьте коллекцию PotentialReasons и InnerException для получения более подробной информации.

Правильно ли выглядит приведенный ниже код или я что-то упустил?

Ниже приведен объект, который пытается повторно использовать

public class Thickness
{
    public string Name { get; set; }
    public byte ThicknessSize { get; set; }
}

Я реализовал это в своем классе сущности, как показано ниже

public class Liner
{
    public virtual int Id { get; set; }
    public virtual Thickness Thickness { get; set; }
}

Карта для сущности

public class LinerMap : ClassMap<Liner>
{
    public LinerMap()
    {
        Table("Liner");
        Id(l => l.Id);
        Component(l => l.Thickness);              
    }
}

Конфигурация выглядит следующим образом

   public static ISessionFactory CreateSessionFactory()
    {

        return Fluently.Configure()
            .Database(MsSqlConfiguration.MsSql2008.ConnectionString(c => c
                .Server("XXXXX")
                .Database("XXXXX")
                .Username("XXXXXXXXXX")
                .TrustedConnection()))
            .Mappings(m => m.FluentMappings.AddFromAssemblyOf<Liner>())
            .Mappings(m => m.FluentMappings.AddFromAssemblyOf<Thickness>())
            .BuildSessionFactory();
    }

Я заметил, что беглая вики говорит, что эта функция не работает для автоматического сопоставления, поэтому я явно использовал метод .mapping, но я не уверен, достаточно ли этого

Любые идеи будут с благодарностью приветствоваться

GB

1 Ответ

1 голос
/ 19 марта 2012

Немного покопался в методе Component , и если ваш код пытается использовать его возможности, ему нужен другой параметр.Я не уверен, почему он компилируется так, как написано, но ему нужны два параметра: параметр для ссылочного свойства и другой, описывающий отображение для этого ссылочного свойства.

...