WebMethod 中的 CacheDuration 被忽略

发布于 2024-12-03 21:33:04 字数 296 浏览 1 评论 0原文

我尝试缓存 Web 服务的 webmethod 。通过遵循文档,我尝试添加 CacheDuration 属性,并进行了测试:

[WebMethod(CacheDuration = 180)]
public int TestCacheDuration()
{           
   return new Random().Next();
}

对于 webmethod 的每次调用,我都有不同的响应,因此不会缓存它。

正常吗?

感谢您的回答!

I try to cache a webmethod of a webservice. By following the documentation, I have tried to add the CacheDuration attribute, and made a test :

[WebMethod(CacheDuration = 180)]
public int TestCacheDuration()
{           
   return new Random().Next();
}

For each call of the webmethod, I have a different response, so it is not cached.

Is it normal ?

Thanks for your answers!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

画骨成沙 2024-12-10 21:33:04

MSDN论坛对此有明确的解释:

有两个问题可能会影响 ASP.NET 2.0 中的输出缓存
Web 服务应用程序。

在 ASP.NET 2.0 中,测试页的 HTTP 方法已从 GET 更改为
发布。但是,POST 通常不会被缓存。如果您更改
在 ASP.NET 2.0 Web 服务应用程序中测试页面以使用 GET,
缓存工作正常。

此外,HTTP 表示用户代理(浏览器或调用者)
应用程序)应该能够通过设置来覆盖服务器缓存
“缓存控制”更改为“无缓存”。因此,ASP.NET 应用程序忽略
当发现“无缓存”标头时缓存结果。

还有:

在 web.config 中的 webSerices 元素下使用协议元素:

http://msdn2.microsoft.com/en -us/library/ms228319(VS.85).aspx

来源:http://social.msdn.microsoft.com/forums/en-US/asmxandxml/thread/3765f1e2-0ff5-4840-afa2-e85b3d909cd1

This is clearly explained in MSDN forums:

There are two issues that can affect output caching in an ASP.NET 2.0
Web service application.

In ASP.NET 2.0 the HTTP method of the test page has changed from GET
to POST. However, POSTs are not normally cached. If you change the
test page in an ASP.NET 2.0 Web service application to use GET,
caching works properly.

In addition, HTTP indicates that a user agent (the browser or calling
application) should be able to override server caching by setting the
"Cache-Control" to "no-cache". ASP.NET applications, therefore, ignore
cached results when they find a "no-cache" header.

and also:

Use protocols element under webSerices element in web.config:

http://msdn2.microsoft.com/en-us/library/ms228319(VS.85).aspx

source: http://social.msdn.microsoft.com/forums/en-US/asmxandxml/thread/3765f1e2-0ff5-4840-afa2-e85b3d909cd1

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文