开发者

Caching objects and stuff in NHibernate

开发者 https://www.devze.com 2023-01-06 16:04 出处:网络
I\'ve written my own caching layer for my objects that come out of data access. My reasoning here is I\'d like my data access layer to do just that -- dat开发者_如何学Ca access. I don\'t really want i

I've written my own caching layer for my objects that come out of data access. My reasoning here is I'd like my data access layer to do just that -- dat开发者_如何学Ca access. I don't really want it to worry about caching, and I'd only like to go in to that layer when I need to fetch data out of the database. Perhaps this is not the right way to think about things -- please let me know if I'm off track.

Anyway, there is at least one issue that I've ran in to so far. In one scenario, I load an object from NHibernate and stick it in the cache in one request. In the next request I get that object from the cache, modify it, and go back down to NHibernate to save it. Obviously NHibernate pukes, in this particular instance with a "Illegal attempt to associate a collection with two open sessions" exception.

So my question is, I guess, is there anything I should be aware of or do to make this work? Or should I just use a 2nd level cache that's built in to NHibernate?


NHibernate has caching for a reason.. use it :)

You'll find there are quite a few options for a second level cache provider that give you much more flexibility for cheaper then you could build it yourself. A perfect example is something like memcache if you decide you need to run a service on multiple systems.

0

精彩评论

暂无评论...
验证码 换一张
取 消