Fluent NHibernate を使用して SQLite データベースと通信し、オブジェクトを保存するアプリケーションがあります。以下のコードを実行すると、すべての新しいアイテムが空の Guid でループに入りますが (これは予想されます)、SaveOrUpdate 関数が実行されると、すべての新しいアイテムが同じ Guid を受け取ります。session.flush() を追加して、セッションをフラッシュして一意の Guid を強制できるかどうかを確認しましたが、サイコロはありません。
どんな助けでも大歓迎です!
マイ マッピング ファイル
Id(x => x.Id).GeneratedBy.GuidComb().Unique();
コード
public void SaveItems()
{
using (ISession session = SessionProvider.OpenSession())
{
using (var transaction = session.BeginTransaction())
{
foreach (Item item in this.Items)
{
session.SaveOrUpdate(item);
session.Flush();
}
transaction.Commit();
}
}
}