0

とても時間がかかりました。私はそれに迷いました。プログラムを XML から読み取らせ、主キー 'id' でオブジェクトに逆シリアル化します。しかし、'SaveOrUpdate' と 'Save' メソッドの両方を使用しても、データをデータベースに挿入できません。Log4Netはエラーではありません。挿入ログはありません。例外は発生しませんでした。誰かが私を助けてくれます。

今日、テーブルに主キー「HotelId」を追加しようとしましたが、それはアイデンティティであり、機能します。追加の主キーなしで機能させる方法。XML の ID は一意であるためです。だから私は余分な主キーを追加したくありません。

流れるのは *.hbm.xml の一部です

 <id name="id" column="id" type="string"  >
     <generator class="assigned"/>
    </id>
    <property name="dateUpdated" column="dateUpdated" type="DateTime"  />
    <property name="name" column="name" type="string"  />
    <property name="address" column="address" type="string"  />
    <property name="zip" column="zip" type="string"  />

XML にない追加のプライマリを追加すると、次のように機能します。

<id name="Id" column="HotelId" type="int" unsaved-value="0"  >
     <generator class="native"/>
    </id>
    <property name="id" column="id" type="string"  />
    <property name="dateUpdated" column="dateUpdated" type="DateTime"  />
    <property name="name" column="name" type="string"  />
    <property name="address" column="address" type="string"  />
    <property name="zip" column="zip" type="string"  />
4

1 に答える 1

0

私の水晶玉は、あなたが作業を完了し、変更を持続させたいとセッションに伝えたり、使用しtransactions.Commit();たりしないことを教えてくれます. session.Flush();壊れていないことを願っています

于 2012-10-05T10:29:25.697 に答える