C# WCF缓存服务器端

C# WCF缓存服务器端,c#,wcf,caching,C#,Wcf,Caching,如何在C#WCF Rest服务上使用服务器端缓存 例如,我将大量数据生成到一个对象中(不是通过数据库),我不想每次(随机)用户调用都这样做。如何缓存对象 验证问题:HttpContext缓存对象仅位于特定客户端和主机之间是否正确 HttpContext缓存对象仅位于特定客户机和主机之间是否正确 否,根据,它是一个共享对象 每个应用程序域都有一个缓存类实例。作为一个 结果,Cache属性返回的Cache对象是 缓存应用程序域中所有请求的对象 根据负载的不同,您还可以使用数据库进行切换(取决于您所称

如何在C#WCF Rest服务上使用服务器端缓存

例如,我将大量数据生成到一个对象中(不是通过数据库),我不想每次(随机)用户调用都这样做。如何缓存对象

验证问题:HttpContext缓存对象仅位于特定客户端和主机之间是否正确

HttpContext缓存对象仅位于特定客户机和主机之间是否正确

否,根据,它是一个共享对象

每个应用程序域都有一个缓存类实例。作为一个 结果,Cache属性返回的Cache对象是 缓存应用程序域中所有请求的对象


根据负载的不同,您还可以使用数据库进行切换(取决于您所称的缓存)。还有专门为分布式缓存优化的内存中数据库,请参阅和HttpContext。缓存是应用程序域的本地数据库,因此由该应用程序域中运行的所有代码共享。对于大多数应用程序来说,它确实足够快速和灵活

你将如何使用它,当然取决于你的需要。您可以使用输入参数的序列化版本作为键,例如,如本例所示:

public MyObject GetMyObject(int size, string cultureId, string extra)
{
    // Input validation first
    ...

    // Determine cache key
    string cacheKey = size.ToString() + cultureId.ToString() + extra.ToString();

    // rest of your code here
}