Беглая ошибка nHibernate - PullRequest
1 голос
/ 20 июля 2010

Когда я пытаюсь выполнить BuildSessionFactory (), я получаю сообщение об ошибке, в котором говорится, что не удается найти следующие сборки:

Не удалось создать драйвер из NHibernate.Driver.OracleDataClientDriver, NHibernate, Version = 2.1.2.4000

У меня есть ссылка на Oracle.DataAccess версии 4.11 в моей папке bin и локально, я использую:

Oracle 10 и Visual Studio 2010 .NET 4

И вызов сметод ниже:

public static ISessionFactory CreateSessionFactory()
    {
        FluentConfiguration idk = Fluently
            .Configure()
            .Database(OracleDataClientConfiguration
                .Oracle9
                .UseReflectionOptimizer()
                .MaxFetchDepth(3)
                .AdoNetBatchSize(500)
                .ConnectionString(cs => cs
                .Server("Paul-PC")
                .Port(1521)
                .Instance("xe")
                .Username("xxxx")
                .Password("xxxx")
                .Pooling(true)
                .StatementCacheSize(100)
                .OtherOptions(
                "Min Pool Size=10;Incr Pool Size=5;Decr Pool Size=2;")
            )
            // It does this automatically.. but I like to be explicit ;)
            .ProxyFactoryFactory("NHibernate.ByteCode.Castle.ProxyFactoryFactory,NHibernate.ByteCode.Castle")
            .ShowSql()
            )
            .Mappings(m => m.FluentMappings.Add(typeof(PortalUserMap)));

        idk.ExposeConfiguration(BuildSchema);

        return idk.BuildSessionFactory();
    }

Класс PortalUserMap находится ниже:

using System;

using System.Collections.Generic;использование System.Linq;используя System.Text;использование FluentNHibernate.Mapping;использование Mobisoft.Portal.Security.Entities;

пространство имен Mobisoft.Portal.Security.Mappings {открытый класс PortalUserMap: ClassMap {public PortalUserMap () {Table ("PORTALUSER");

        Id(x => x.Id, "ID").GeneratedBy.Identity();
        Map(x => x.Name, "NAME");
    }

}

Пожалуйста, кто-нибудь, помогите мне, я уже два дня пытаюсь найти ответ в Интернете.

Пол.

Ответы [ 2 ]

1 голос
/ 20 января 2011

Fluent NHibernate 1.1, ссылка NHibernate 2.1.X, вам нужно сослаться на Fluent NHibernate 1.2 в вашем проекте, прежде чем вы сможете использовать его с NHibernate 3.0.4 или выше, что, я полагаю, то, что вы используете. Вы можете скачать его здесь http://fluentnhibernate.org/dls/v1.x/fluentnhibernate-NH3.0-binary-1.2.0.694.zip

0 голосов
/ 20 июля 2010

Обновите ссылку на Oracle.DataAccess.dll в вашем проекте, установив для CopyLocal значение True.

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