使用Enterprise Library 3.0的缓存,如果使用Isolated Storage,把缓存内容保存在磁盘上,web.config
<identity impersonate="false" /> 报错:
拒绝访问。 (异常来自 HRESULT:0x80070005 (E_ACCESSDENIED))
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.ApplicationException: 拒绝访问。 (异常来自 HRESULT:0x80070005 (E_ACCESSDENIED))
源错误:
行 34: CacheManager Cache1 = CacheFactory.GetCacheManager("CacheIsolated");
只有设置了impersonate="true" 并且设置有系统管理员权限的帐号和密码,才可以正常使用。如下面的
<identity impersonate="true" userName="Administrator" password="123" />
如果不指定帐号和密码则报错:
无法创建存储区目录。 (异常来自 HRESULT:0x80131468)
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.IO.IsolatedStorage.IsolatedStorageException: 无法创建存储区目录。 (异常来自 HRESULT:0x80131468)
源错误:
行 34: CacheManager Cache1 = CacheFactory.GetCacheManager("CacheIsolated");
这样其不有安全问题吗?如果你使用虚拟空间的话,怎么可能告诉你系统管理员的帐号和密码呢?