如何在asp.net网站中使用自定义IoC?
我正在尝试编写一个简单的 IoC 库,并将在 ASP.NET 网站中使用它。
我的问题是:我是否应该缓存所有注册的对象“我将其添加到 Dictionary
”并在每个请求中使用缓存的对象? ,或者我应该在每次页面加载或新请求时解决它们?
现有的工具(例如 Unity)是否具有内置缓存?
I am trying to write a simple IoC library, and i am going to use it in asp.net websites.
My Question is: Should i cache all the registered objects "i add this in Dictionary<Type, object>
" and use the cached objects each request? ,or should i resolve them each time page loads or on a new request?
And does the exist tools such as unity has a built in caching?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
以下是由 Ayende Rahien,它可能对您感兴趣/有帮助。
Here is an example of a custom IOC written by Ayende Rahien, it may be of some interest/help to you.
现有工具允许您指定对象的“生命周期”。因此,您可以给一个对象一个“单例”生命周期,并且只会创建一个对象(IOC 容器将缓存它)。同样,会话生命周期、Web 请求生命周期等。在每个场景中,对象都会被适当地缓存。
Existing tools allow you to specify the "lifetime" of an object. So you can give an object a "singleton" lifetime and only one will ever be created (the IOC container will cache it). Likewise, session lifetime, web request lifetime, etc. In each of these scenarios objects are appropriately cached.