gpt4 book ai didi

ASP.NET MemoryCache 跨应用程序共享

转载 作者:行者123 更新时间:2023-12-04 17:51:36 28 4
gpt4 key购买 nike

我一直在阅读有关从 .Net Framework 4.0 开始的新 MemoryCache 类的所有地方。根据我的阅读,您可以跨不同的 .Net 应用程序访问 MemoryCache。我正在尝试在 Asp.Net 应用程序和标准 windows 窗体 .Net 应用程序之间共享一个对象。如果我将对象添加到 .Net 应用程序中的 MemoryCache,Asp.Net 应用程序将看不到它。有什么办法可以做到这一点吗?感谢您抽出宝贵时间,非常感谢。

Windows 窗体应用程序:

    Dim cache As ObjectCache = MemoryCache.Default
Dim policy As New CacheItemPolicy()
policy.AbsoluteExpiration = DateTimeOffset.Now.AddMinutes(60)
cache.Set("testcache", TestObj, policy)

Asp.Net 应用程序:
    Dim cache As ObjectCache = MemoryCache.Default
If IsNothing(cache("testcache")) Then Response.Write("TestCache Is Nothing")

谢谢 -
瑞安

最佳答案

不,这不可能。 MemoryCache不是分布式缓存解决方案。所以它只能在本地使用。

如果您正在寻找分布式缓存替代方案,您可能需要查看 AppFabricRedis .

但是,想要以这种方式共享缓存听起来确实有点奇怪。
也许公开一个共享服务层,asp.net 和 winforms 都使用它,并且只让服务实现缓存看起来更合乎逻辑(考虑到我实际上对你要解决的问题一无所知,所以我可以错误的)。

出于性能原因,缓存更常用,而不是作为在应用程序之间共享数据的一种方式。

关于ASP.NET MemoryCache 跨应用程序共享,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15315132/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com