System.Runtime.Caching.MemoryCache被描述为一种用于非web应用程序的System.Web.Caching.Cache,但有什么区别?是否有理由不在ASP.Net应用程序中使用System.Runtime.Caching.MemoryCache?您可以在Web应用程序中使用System.Runtime.Caching.MemoryCache吗?
1
A
回答
1
是的,你当然可以。
至于一个原因,它们并不完全一样,并且不共享相同的缓存优先级,所以如果你要使用它们,那么在内存不足的情况下,你可能会发现一些东西从缓存中弹出,你没有想到。
如果你只是使用其中一个,你应该没问题。
1
不同之处在于它针对non-asp.net应用程序的使用进行了优化,因为它对System.Web没有依赖性。根据this MSDN page,另一个区别是,您可以创建MemoryCache类的多个实例,以用于同一应用程序和同一AppDomain实例中。
因此,真的没有理由不仅仅是在你的asp.net应用程序中使用System.Web.Caching.Cache,但是,你也可以使用System.Runtime.Caching.MemoryCache。
1
我相信System.Runtime.Caching
实际上是较新的,并建模System.Web.Caching
之后,区别在于你不必依赖于System.Web程序集。此外,System.Runtime.Caching.MemoryCache
是可扩展的,而你不能从System.Web.Caching.Cache
继承
我的建议是,如果你有一个共同的库,比如说,用于Web和服务(例如),一起去System.Runtime.Caching
所以你不”不得不包含System.Web绒毛(如果你不需要它)。
下面是关于该主题的一些讨论:dotnet System.Web.Caching.Cache vs System.RUntime.Caching.MemoryCache
相关问题
- 1. 您可以使用openshift来部署非Web应用程序吗?
- 2. 您可以在IIS中托管ServiceStack Web应用程序吗?
- 3. 您可以在Java EE Web应用程序中实现Vue.js吗?
- 4. 您可以使用控制台应用程序中的LiveSDK吗?
- 5. 可以在.NET Web应用程序中安全使用点吗?
- 6. 我可以在非web应用程序中使用Spring Framework吗?
- 7. 我可以在Web应用程序中使用DirectShow吗?
- 8. 我可以在web应用程序中使用iCloud API吗?
- 9. 我可以在Web应用程序中使用Awesomeium吗?
- 10. 我可以在云网络角色项目中使用System.Runtime.Caching.MemoryCache吗?
- 11. 您可以使用NSPasteBoard粘贴到其他应用程序吗?
- 12. 您可以使用JMeter测试Siebel应用程序吗?
- 13. 您可以使用带电话应用程序的Selenium吗?
- 14. 您可以在云中运行winform应用程序吗?
- 15. 您可以在Mac应用程序中安装Safari扩展吗?
- 16. 您可以在Silverlight中构建整个应用程序吗?
- 17. 您可以在VB.NET桌面应用程序中使用JIRA的SOAP API吗?
- 18. 您可以在C++/CLI WinForms应用程序中本地使用C++库吗?
- 19. 您可以使用Dreamweaver在appcelerator中开发移动应用程序吗?
- 20. 您可以在JSF应用程序的消息键中使用句点吗?
- 21. 您可以在付费IOS应用程序中使用Google图表吗?
- 22. 您可以在WPF应用程序中使用sketchflow控件/样式吗?
- 23. 您可以在Windows 8 Metro应用程序中混合使用HTML和XAML吗?
- 24. 您可以从ASP.NET 1.1 Web应用程序调用.NET 2.0 COM对象吗?
- 25. iPhone Web应用程序可以使用相机吗?
- 26. 可以使用Kinect,HTML5和jQuery开发Web应用程序吗?
- 27. 非Web应用程序可以使用OpenID吗?
- 28. Web应用程序可以使用JNDI查找记录器吗?
- 29. 您可以在OS X上开发Windows Mobile应用程序吗?
- 30. 您可以在线托管Windows应用程序吗?