WebMethodAttribute.CacheDuration プロパティ
応答をキャッシュ内に保持する秒数を取得または設定します。
Public Property CacheDuration As Integer
[C#]
public int CacheDuration {get; set;}
[C++]
public: __property int get_CacheDuration();public: __property void set_CacheDuration(int);
[JScript]
public function get CacheDuration() : int;public function set CacheDuration(int);
プロパティ値
応答をキャッシュ内に保持する秒数。既定値は 0 です。応答がキャッシュされていないことを示します。
解説
キャッシングを有効にすると、要求と応答はサーバーのメモリに少なくともキャッシュの存続期間中は保持されるため、要求または応答のデータが大量の場合、または要求が大きく変更される場合は注意が必要です。
使用例
[Visual Basic, C#] ServiceUsage
XML Web サービス メソッドを呼び出した結果を、キャッシュ内に 60 秒間格納する例を次に示します。その 60 秒間に、XML Web サービス クライアントが ServiceUsage
XML Web サービス メソッドを実行すると、常に同じ結果が返されます。
<%@ WebService Language="VB" Class="Counter" %>
Imports System.Web.Services
Imports System
Imports System.Web
Public Class Counter
Inherits WebService
<WebMethod(Description := "Number of times this service has been accessed", _
CacheDuration := 60, _
MessageName := "ServiceUsage")> _
Public Function ServiceUsage() As Integer
' If the XML Web service has not been accessed, initialize it to 1.
If Application("MyServiceUsage") Is Nothing Then
Application("MyServiceUsage") = 1
Else
' Increment the usage count.
Application("MyServiceUsage") = CInt(Application("MyServiceUsage")) + 1
End If
' Return the usage count.
Return CInt(Application("MyServiceUsage"))
End Function
End Class
[C#]
<%@ WebService Language="C#" Class="Counter" %>
using System.Web.Services;
using System;
using System.Web;
public class Counter : WebService {
[ WebMethod(Description="Number of times this service has been accessed",
CacheDuration=60,MessageName="ServiceUsage") ]
public int ServiceUsage() {
// If the XML Web service has not been accessed, initialize it to 1.
if (Application["MyServiceUsage"] == null) {
Application["MyServiceUsage"] = 1;
}
else {
// Increment the usage count.
Application["MyServiceUsage"] = ((int) Application["MyServiceUsage"]) + 1;
}
// Return the usage count.
return (int) Application["MyServiceUsage"];
}
}
[C++, JScript] C++ および JScript のサンプルはありません。Visual Basic および C# のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ
参照
WebMethodAttribute クラス | WebMethodAttribute メンバ | System.Web.Services 名前空間