天天看點

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

finisar.sqlite.sqliteconnection

情況:我想存儲少量的資料,在資料庫,

2,并且使用nhibernate

nhibernate對access的支援算不上好,是以我就選擇使用了sqlite,但是同樣的代碼在ms sql server上能通過但就是就對sqlite通過不過,通過一步,步地跟蹤發現sqlite的構造函數是如下的情況

public sqlitedriver() : base(

   "sqlite.net",

   "finisar.sqlite.sqliteconnection",

   "finisar.sqlite.sqlitecommand")

  {

  }

而nhibernate中sqlite中使用的sqlite的dll卻是使用的

因為dll不對,是以經常出現不能 could not create driver from ***這個錯誤,在使用這個版本的時候,我們應将sqlite3.dll這個dll拷貝到執行目錄下,不然的話,會出錯

 這是使用sqlite時用到的配置檔案,(注,隻适用于nhibernate 1.2版本,其它版本請不要參考)

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

<?xml version="1.0" encoding="utf-8" ?>

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

<configuration>

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

    <configsections>

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

        <section name="nhibernate" type="system.configuration.namevaluesectionhandler, system, version=1.0.5000.0,culture=neutral, publickeytoken=b77a5c561934e089" />

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

        <section name="log4net" type="log4net.config.log4netconfigurationsectionhandler,log4net" />

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

    </configsections>

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

    <nhibernate>

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

    <!--    

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

       <add key="hibernate.show_sql"

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

            value="true" />

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

        <add key="hibernate.connection.provider"

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

            value="nhibernate.connection.driverconnectionprovider" />

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

        <add key="hibernate.dialect"

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

             value="nhibernate.dialect.mssql2000dialect" />

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

        <add key="hibernate.connection.driver_class"

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

             value="nhibernate.driver.sqlclientdriver" />

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

        <add key="hibernate.connection.connection_string"

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

             value="server=.cxy;database=mytest;uid=sa;pwd=cxy" />

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

    -->

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

        <add key="hibernate.show_sql"

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

             value="nhibernate.dialect.sqlitedialect" />

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

             value="nhibernate.driver.sqlitedriver" /> 

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

             value="data source=cxy.db;version=3" />

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

        <add key="hibernate.query.substitutions"

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

                value="true=1;false=0" />

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

    </nhibernate>

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

    <!-- this section contains the log4net configuration settings -->

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

    <log4net>

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

        <!-- define some output appenders -->

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

        <appender name="rollingfile" type="log4net.appender.rollingfileappender,log4net" >

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

            <param name="file" value="log.txt" />

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

            <param name="appendtofile" value="true" />

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

            <param name="rollingstyle" value="date" />

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

            <param name="datepattern" value="yyyy.mm.dd" />

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

            <param name="staticlogfilename" value="true" />

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

            <layout type="log4net.layout.patternlayout,log4net">

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

                <param name="conversionpattern" value="%d [%t] %-5p %c [%x] <%x{auth}> - %m%n" />

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

            </layout>

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

        </appender>

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

        <!-- setup the root category, add the appenders and set the default priority -->

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

        <root>

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

            <priority value="all" />

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

            <appender-ref ref="rollingfile" />

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

        </root>

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

    </log4net>

在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者
在nhibernate 1.2 中使用sqlite時應注意sqlite的ado.net的提供者

</configuration>