我有一个托管在IIS中的WCF服务,并希望返回驻留在IIS缓存中的数据(HttpContext.Current.Cache)这个服务应该返回的类型最合适的选择是什么?
如果我是你,我不会依赖服务托管在IIS中的事实.如果您想使用其他技术托管WCF服务,该怎么办?我认为你应该检查memcached这是一个更通用的缓存解决方案,它适用于.NET.
无论如何,如果你真的想使用IIS缓存,请使用System.Web.HttpRuntime.Cache而不是HttpContext.Current.Cache,因为HttpContext并不总是可用.
此外,正如巡洋舰所说,只要它们是可序列化的(即,类使用[Serializable()]属性修饰),对象的实际类型就完全无关紧要了.IIS缓存本身不需要可序列化的对象,但WCF可以.