【问题标题】:What are some database caching options for .Net?.Net 有哪些数据库缓存选项?
【发布时间】:2010-09-28 08:50:27
【问题描述】:

我在网上看到有很多关于缓存 ASP.Net 的问题,但没有很多关于智能客户端应用程序及其数据库的缓存选项的讨论。

.Net 框架上的智能客户端应用程序有哪些可用的数据缓存选项,你们中的任何人如何使用它们?


编辑

下面提到了企业框架,想法?

【问题讨论】:

    标签: .net asp.net winforms caching database-caching


    【解决方案1】:

    好吧,如果您有一个 Windows 窗体应用程序,您通常不会关心 ASP.NET 中常见的多用户缓存方案的类型。我认为这就是为什么您在这里没有看到很多关于该主题的文档的原因。

    我通常为 Windows 窗体推出自己的缓存机制——只是将“缓存”的内容存储为应用程序的状态。您是否有任何需要它的场景示例?解决方案应该根据问题量身定制......

    【讨论】:

    • 这是一个智能客户端应用程序,通过网络服务,将其包含在问题中,谢谢。
    【解决方案2】:

    在 Winforms Smart Client 应用程序中需要/希望缓存经常访问的数据。从缓存中读取数据通常比访问您的数据提供者/网络服务更快。

    这里有几个带有示例的选项

    1. 企业库的缓存应用程序块是一个不错的选择。
    2. 此外,System.Web.Caching.Cache 可以与 Winforms 一起使用,只需获取一个静态实例即可。

    请参见下面的示例。

    使用 Entlib

     using Microsoft.Practices.EnterpriseLibrary.Caching;
        //Later 
        CacheManager cache= CacheFactory.GetCacheManager(); 
        cache.Add("dataKey", "Yourdata")
    

    使用 .NET 内置缓存 - 这也适用于您的 Winform 应用程序。

    using System.Web.Caching;
    using System.Web;
    
    public sealed class CacheProvider 
    { 
        private CacheProvider(){}; 
    
        public static GetInstance() 
        {  
                return HttpRuntime.Cache;
        } 
    }
    

    【讨论】:

    • 关于不必解密 100 多个 .config 设置的任何好技巧?也为企业 +1,忘记了那套。
    • 感谢您的示例,我将特别研究 HttpRuntime ,已经通过将其集成到我拥有的 LinqToSql 类中对其进行了测试,并且证明它是一个资源释放器。跨度>
    【解决方案3】:

    Velocity 是另一种选择。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-05-02
      • 2011-12-14
      • 2013-01-25
      • 1970-01-01
      • 2013-11-08
      • 1970-01-01
      相关资源
      最近更新 更多