私はキャッシュしたい非常に簡単なCountryエンティティを持っています。これは完全に機能しますが、キャッシュされたインスタンスのクローンバージョンを返すか、または開発者がその状態を変更できないように読み取り専用にする必要があります。流暢なマッピングとSyscache2の第2レベルキャッシングを使用するNHibernate
これをどのように達成できますか?私はFluent Readonly()メソッドがこれを強制することを約束しましたが、そうではありません。
サンプル流暢マッピング:
Id(x => x.Id);
Map(x => x.Name).WithLengthOf(50).Not.Nullable().Unique();
Map(x => x.IsoCode).WithLengthOf(10).Not.Nullable().Unique();
HasMany(x => x.States).Cascade.None().LazyLoad();
Cache.AsReadOnly();
私のユニットテストは明らかに実体がキャッシュされていることを示し、同じエンティティが、その後に返されることになりますが、私はそれが永続からロードされています一度オブジェクトは不変になりたいです格納。
ありがとうございます!