nhibernate VB.NET - PullRequest
       3

nhibernate VB.NET

1 голос
/ 26 апреля 2011

Я нашел примеры для настройки NHibernate в командной строке, но в C #, и мне нужно это в VB, но я не нашел, как это сделать. Так что вопрос в том, как написать это в VB:

configuration.Proxy(proxy => proxy.ProxyFactoryFactory<ProxyFactoryFactory>());

configuration.DataBaseIntegration(db =>
{
    db.Dialect<MsSql2008Dialect>();
    db.ConnectionString = Sql.db;
    db.BatchSize = 100;
    db.LogSqlInConsole = true;
});

Примечание: я не хочу делать это в XML.

Ответы [ 2 ]

2 голосов
/ 28 апреля 2011

У меня получилось !!!

У меня есть 2 рабочих решения:

Dim dictionary As New Dictionary(Of String, String)
dictionary.Add("dialect", "NHibernate.Dialect.MsSql2008Dialect")
dictionary.Add("connection.provider", "NHibernate.Connection.DriverConnectionProvider")
dictionary.Add("connection.connection_string", Sql.db)
dictionary.Add("proxyfactory.factory_class", "NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle")
configuration.AddProperties(dictionary)
configuration.AddAssembly("Core")

и мета-рыцарь один (с сабом вместо функции)

configuration.Proxy(Sub(proxy) proxy.ProxyFactoryFactory(Of ProxyFactoryFactory)())
configuration.DataBaseIntegration( _
                Sub(db)
                    db.Dialect(Of MsSql2008Dialect)()
                    db.ConnectionString = Sql.db
                    db.BatchSize = 100
                    db.LogSqlInConsole = True
                End Sub)
configuration.AddAssembly("Core")

Оба работают хорошо, но у меня была другая проблема с файлами XML!

Я сделал это в C #, и это работало хорошо:

 <class name="Core.Product, Core" table="Product">
    <class name="Product">

Но в VB вы ДОЛЖНЫ добавитьназвание проекта в определении класса так:

<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
  <class name="Core.Product, Core">

Надеюсь, это поможет другим людям!

Спасибо всем

1 голос
/ 26 апреля 2011

Попробуйте это:

configuration.Proxy(Sub(proxy) proxy.ProxyFactoryFactory(Of ProxyFactoryFactory)())

configuration.DataBaseIntegration( _
    Sub(db)
        db.Dialect(Of MsSql2008Dialect)()
        db.ConnectionString = Sql.db
        db.BatchSize = 100
        db.LogSqlInConsole = True
    End Sub)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...