1

私のクライアントは、変更が自動的に保存されるMicrosoft OneNoteのようなプログラムが好きで、明示的に保存したい場合は破棄することを選択できます。いくつかの元に戻す機能を実装する必要がありますが、それは別の機会に理解します。

NHibernateを使用すると、プロパティ/バインディングの変更ごとにISession.Updateを呼び出すことができると思いますが、このアプローチでは、将来的には本当に苦痛を感じることがあります。私はタイマーのファンではありませんが、プロパティ/バインディングの変更で開始し、タイマーの終了時にBackgroundWorkerスレッドを使用してdbに保存する5秒のタイマーである可能性があります。

どう思いますか?

4

1 に答える 1

1

通常、プロパティの変更ごとに ISession.Update を実行することはお勧めできません。プロパティ変更イベントは頻繁に発生します。変更ごとに ISession.Update を実行すると、アプリケーションの速度が低下する可能性があります。これはおそらく、ユーザー エクスペリエンスの低下につながります。

私たちのアプリケーションでは、同じ動作をします。ビューが閉じられたときに変更を保存します (他の関連イベント)。たとえば、ユーザーがタブを閉じると、そのタブに表示されていたデータが閉じられます。

アプリケーションのクラッシュや予期しない事態が発生した場合のデータ損失を防ぐために、タイマーを追加することをお勧めします。

于 2010-04-24T20:00:53.033 に答える