Nhibernate和Sqlite数据库的使用

允我心安 提交于 2019-12-18 13:35:22

hibernate.cfg.xml配置文件Sample:

<?xml version="1.0" encoding="utf-8" ?>
<hibernate-configuration  xmlns="urn:nhibernate-configuration-2.2" >
  <session-factory name="Rock">
    <!-- properties -->
    <property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property>
    <property name="connection.driver_class">NHibernate.Driver.SQLite20Driver, NHibernate</property>
    <property name="connection.connection_string">Data Source=D:\Data\SQLite_DB\rock.db;Version=3</property>
    <property name="dialect">NHibernate.Dialect.SQLiteDialect, NHibernate</property>
    <property name="query.substitutions">true=1;false=0</property>
    <property name="proxyfactory.factory_class">NHibernate.ByteCode.LinFu.ProxyFactoryFactory, NHibernate.ByteCode.LinFu</property>
    <property name="show_sql">false</property>
    <property name="use_outer_join">true</property>
    <!--
            these are different than the values in app.config so I can verify these
            are being picked up
        -->
    <property name="command_timeout">444</property>
    <!-- mapping files -->
    <!-- are now optional
            <mapping file="ABC.hbm.xml" />
            <mapping resource="NHibernate.DomainModel.Simple.hbm.xml" assembly="NHibernate.DomainModel" />
        -->
  </session-factory>

</hibernate-configuration>

 

自动增加主Key的Mapping的Sample:

<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" default-lazy="false" namespace="Rock.Data.Model" assembly="Rock.Data.Model">
    <class name="PasswordMaster,Rock.Data.Model" table="PasswordMaster" lazy="false">

        <!-- Primary Key(s) -->
        <id name="Id" column="PwdKey" type="Int32" unsaved-value="0">
           <generator class="increment"/>
        </id>
        <!-- Properties -->
        <property column="PwdName" type="String" name="PwdName" not-null="true" length="50" />
        <property column="PwdID" type="String" name="Pwdid" not-null="true" length="50" />
        <property column="PwdValue" type="String" name="PwdValue" not-null="true" length="50" />
        <property column="WebSite" type="String" name="WebSite" length="50" />
        <property column="Q1" type="String" name="Q1" length="50" />
        <property column="A1" type="String" name="A1" length="50" />
        <property column="Q2" type="String" name="Q2" length="50" />
        <property column="A2" type="String" name="A2" length="50" />
        <property column="Q3" type="String" name="Q3" length="50" />
        <property column="A3" type="String" name="A3" length="50" />
        <property column="CreateDate" type="DateTime" name="CreateDate" not-null="true" />
        <property column="Remark" type="String" name="Remark" length="255" />
    </class>
</hibernate-mapping>

 

当然项目要引用System.Data.Sqlite.DLL这个文件。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!