SqlDataSource.CacheDuration プロパティとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > SqlDataSource.CacheDuration プロパティの意味・解説 

SqlDataSource.CacheDuration プロパティ

メモ : このプロパティは、.NET Framework version 2.0新しく追加されたものです。

Select メソッドによって取得したデータを、データ ソース コントロールキャッシュする時間 (秒単位) を取得または設定します

名前空間: System.Web.UI.WebControls
アセンブリ: System.Web (system.web.dll 内)
構文構文

Public Overridable Property
 CacheDuration As Integer
Dim instance As SqlDataSource
Dim value As Integer

value = instance.CacheDuration

instance.CacheDuration = value
public virtual int CacheDuration { get;
 set; }
public:
virtual property int CacheDuration {
    int get ();
    void set (int value);
}
/** @property */
public int get_CacheDuration ()

/** @property */
public void set_CacheDuration (int
 value)
public function get CacheDuration
 () : int

public function set CacheDuration
 (value : int)

プロパティ
SqlDataSource が Select 操作結果キャッシュする秒数。既定値は 0 です。この値には、負の値を指定することはできません。

解説解説

SqlDataSource コントロールは、データキャッシュサポートしてます。データキャッシュされる間、Select メソッドは、基になるデータベースではなくキャッシュからデータ取得しますキャッシュ有効期限が切れると、Select メソッドは基になるデータベースからデータ取得し、そのデータを再びキャッシュます。

EnableCaching プロパティtrue設定されCacheDuration プロパティ (キャッシュ エントリが破棄されるまでの、キャッシュデータ格納されている秒数) が 0 より大きい値に設定されている場合SqlDataSource コントロールデータ自動的にキャッシュます。値 0 は、キャッシュ時間制限されていないことを示します

キャッシュ動作は、存続期間と CacheExpirationPolicy プロパティ組み合わせによって決定されます。CacheExpirationPolicy プロパティAbsolute 値に設定した場合SqlDataSource最初データ取得操作データキャッシュし、最長CacheDuration プロパティ指定され時間メモリ内にデータ保持しますメモリ必要になった場合データ存続期間途中で解放されることがあります。この場合キャッシュ次の操作時に更新されます。CacheExpirationPolicy プロパティSliding 値に設定した場合データ ソース コントロールは、最初データ取得操作データキャッシュしますが、これ以降操作を行うたびに、キャッシュ保持する時間ウィンドウリセットします。最後Select 操作の後、CacheDuration 値で指定され時間経過してアクティビティない場合は、キャッシュ有効期限切れます

SqlDataSource コントロールデータキャッシュできるのは、DataSet モード場合だけです。SqlDataSource コントロールが DataReader 値に設定されキャッシュ有効な場合Select メソッドによって NotSupportedException 例外スローさます。

セキュリティに関するメモセキュリティに関するメモ

Microsoft Windows 認証クライアント偽装使用している場合最初ユーザーデータアクセスすると、データキャッシュされます別のユーザーが同じデータ要求した場合データキャッシュから取得されます。データベースに対してもう一度呼び出し行っても、ユーザーデータへのアクセス確認するためにデータ取得実行することはありません。複数ユーザーによるデータへのアクセス想定されデータ取得されるたびにデータベースセキュリティ構成使用して検証することを希望する場合は、キャッシュ使用しないください

使用例使用例

データ キャッシュ有効な状態で、Microsoft SQL ServerNorthwind データベースからデータ取得し、GridView コントロール表示する方法次のコード例示しますCacheDuration20 秒に設定されます。既定では、CacheExpirationPolicy プロパティAbsolute 値に設定されているため、このページユーザーに対して 20 秒ごとに新しデータ表示されます。

<%@ Page language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML
 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<HTML>
    <BODY>
        <FORM runat="server">

            <asp:SqlDataSource
                id="SqlDataSource1"
                runat="server"
                DataSourceMode="DataSet"
                ConnectionString="<%$ ConnectionStrings:MyNorthwind%>"
                EnableCaching="True"
                CacheDuration="20"
                SelectCommand="SELECT EmployeeID,FirstName,LastName,Title
 FROM Employees">
            </asp:SqlDataSource>

            <asp:GridView
                id="GridView1"
                runat="server"
                AutoGenerateColumns="False"
                DataSourceID="SqlDataSource1">
                <columns>
                    <asp:BoundField HeaderText="First Name"
 DataField="FirstName" />
                    <asp:BoundField HeaderText="Last Name"
 DataField="LastName" />
                    <asp:BoundField HeaderText="Title"
 DataField="Title" />
                </columns>
            </asp:GridView>

        </FORM>
    </BODY>
</HTML>
<%@ Page language="CS" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<HTML>
    <BODY>
        <FORM runat="server">

            <asp:SqlDataSource
                id="SqlDataSource1"
                runat="server"
                DataSourceMode="DataSet"
                ConnectionString="<%$ ConnectionStrings:MyNorthwind%>"
                EnableCaching="True"
                CacheDuration="20"
                SelectCommand="SELECT EmployeeID,FirstName,LastName,Title FROM
 Employees">
            </asp:SqlDataSource>

            <asp:GridView
                id="GridView1"
                runat="server"
                AutoGenerateColumns="False"
                DataSourceID="SqlDataSource1">
                <columns>
                    <asp:BoundField HeaderText="First Name" DataField="FirstName"
 />
                    <asp:BoundField HeaderText="Last Name" DataField="LastName"
 />
                    <asp:BoundField HeaderText="Title" DataField="Title"
 />
                </columns>
            </asp:GridView>

        </FORM>
    </BODY>
</HTML>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<HTML>
    <BODY>
        <FORM runat="server">

            <asp:SqlDataSource
                id="SqlDataSource1"
                runat="server"
                DataSourceMode="DataSet"
                ConnectionString="Data Source=localhost;Integrated Security=SSPI;Initial
 Catalog=Northwind;"
                EnableCaching="True"
                CacheDuration="20"
                SelectCommand="SELECT EmployeeID,FirstName,LastName,Title FROM
 Employees">
            </asp:SqlDataSource>

            <asp:GridView
                id="GridView1"
                runat="server"
                AutoGenerateColumns="False"
                DataSourceID="SqlDataSource1">
                <Columns>
                    <asp:BoundField HeaderText="First Name" DataField="FirstName"
 />
                    <asp:BoundField HeaderText="Last Name" DataField="LastName"
 />
                    <asp:BoundField HeaderText="Title" DataField="Title"
 />
                </Columns>
            </asp:GridView>

        </FORM>
    </BODY>
</HTML>
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
SqlDataSource クラス
SqlDataSource メンバ
System.Web.UI.WebControls 名前空間
CacheExpirationPolicy
EnableCaching



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「SqlDataSource.CacheDuration プロパティ」の関連用語

SqlDataSource.CacheDuration プロパティのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



SqlDataSource.CacheDuration プロパティのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS