SqlDataSource.EnableCaching プロパティ
アセンブリ: System.Web (system.web.dll 内)

Dim instance As SqlDataSource Dim value As Boolean value = instance.EnableCaching instance.EnableCaching = value
/** @property */ public boolean get_EnableCaching () /** @property */ public void set_EnableCaching (boolean value)
データ ソース コントロールでデータ キャッシュが有効な場合は true。それ以外の場合は false。既定値は false です。


SqlDataSource コントロールは、データのキャッシュをサポートしています。データがキャッシュされる間、Select メソッドは、基になるデータベースではなくキャッシュからデータを取得します。キャッシュの有効期限が切れると、Select メソッドは基になるデータベースからデータを取得し、そのデータを再びキャッシュします。
EnableCaching プロパティが true に設定され、CacheDuration プロパティ (新しいセットが取得されるまでの、キャッシュにデータが格納される秒数) が 0 より大きい値に設定されている場合、SqlDataSource コントロールはデータを自動的にキャッシュします。
![]() |
---|
Microsoft Windows 認証の下でクライアント偽装を使用している場合、最初のユーザーがデータにアクセスすると、データがキャッシュされます。別のユーザーが同じデータを要求した場合、データはキャッシュから取得されます。データベースに対してもう一度呼び出しを行っても、ユーザーのデータへのアクセスを確認するためにデータ取得を実行することはありません。複数ユーザーによるデータへのアクセスが想定され、データが取得されるたびにデータベースのセキュリティ構成を使用して検証する場合は、キャッシュを使用しないでください。 |

データ キャッシュが有効な状態で、Microsoft SQL Server の Northwind データベースからデータを取得し、GridView コントロールに表示する方法を次のコード例に示します。EnableCaching プロパティが true に設定され、CacheDuration が 20 秒に設定されます。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>

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からSqlDataSource.EnableCaching プロパティを検索する場合は、下記のリンクをクリックしてください。

- SqlDataSource.EnableCaching プロパティのページへのリンク