有没有办法从ASP.NET访问IIS内核缓存?
这只清除用户缓存中的项目: public static void ClearCache() { foreach (DictionaryEntry entry in HttpRuntime.Cache) { HttpRuntime.Cache.Remove(entry.Key.ToString()); } } 有没有办法访问内核缓存? 澄清:我想打印内核缓存中所有项的键,作为奖励,我希望能够从C#方法中清除内核缓存. 解决方法是的,可以通过编程方式枚举和删除IIS内核缓存中的项目.注意事项: >需要枚举的非平凡文本解析 列举: 我知道枚举IIS内核缓存的唯一记录方式是IIS7及更高版本中可用的命令行应用程序(尽管您可以将NETSH帮助程序DLL从V7复制到V6系统 – 尚未尝试过). netsh http show cachestate 有关详细信息,请参见MSDN Documentation of the show cachestate command.您可以通过执行该过程并解析文本结果将其转换为“API”. Big Caveat:我从未见过这个命令行应用实际上在我的服务器上返回任何内容,即使是在经典模式下运行的应用程序.不知道为什么 – 但应用程序确实有效,因为我可以在网上看到其他帖子. (例如http://chrison.net/ViewingTheKernelCache.aspx) 如果你对进程创建非常过敏并且有野心勃勃,那么NETSH命令是由带有文档化的Win32接口的DLL实现的,因此你可以编写假装它的NETSH.exe并直接调用IIS的NETSH助手DLL的代码.您可以使用documentation on MSDN作为此方法的起点.警告:模拟NETSH是非常困难的,因为接口是双向的:NETSH调用DLL并且DLL调用回NETSH.而且你仍然需要解析文本输出,因为NETSH接口是基于文本的,而不是基于对象的,如PowerShell或WMI.如果是我,我只会产生一个NETSH流程. (编辑:十堰站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – MVC应用程序中的随机数生成
- asp.net-mvc – 使用IIS基本身份验证的OWIN身份验证
- ASP.NET对大文件上传的解决方案
- Plone和Asp.Net集成
- .net – IIS 6.0和ASPX中的404自定义错误不起作用
- asp.net-core – 如何在Visual Studio 2015 RC中为ASP.NET
- asp.net 删除项目文件/文件夹IIS重启,Session丢失问题
- asp.net-mvc-4 – MVC 4 DropDownListFor错误 – 没有具有密
- ASP.NET缓存管理的几种方法
- asp.net-mvc – 寻找第三方CMS与MVC网站集成
- 如何以编程方式将ListItems添加到ASP.NET中的Dro
- asp.net编程实现删除文件夹及文件夹下文件的方法
- asp.net-mvc-4 – MVC4捆绑GZIP和头文件
- asp.net-core – .net核心自定义身份验证中的Use
- 如何设置特定于ASP.NET请求的log4net上下文属性?
- asp.net – Oracle.ManagedDataAccess:TNS:无法
- 加快ASP.NET中的构建时间
- asp.net-mvc-4 – MVC4 RC脚本捆绑很慢
- asp.net – UserControl Viewstate在回发后丢失所
- asp.net – 经过身份验证的服务不支持跨域javasc