これは、それがこのようなもののような単純な可能性があり、複雑である必要はありません。もちろん
public DataSet GetMyViewData()
{
var results = HttpContext.Current.Cache["myViewResults"] as DataSet;
if(results == null)
{
results = GetMyQueryResults();
HttpContext.Current.Cache["myViewResults"] = results;
}
return results;
}
、それはデータがどのように大規模な、あなたがそれを必要とするどのように新鮮な、などに依存しますキャッシュからの追加や取得はこれで簡単です。
さらに、Webフォームを使用している場合、Selectステートメントの結果をキャッシュするだけであれば、SqlDataSourceコントロールはEnableCachingとCacheDurationポリシーを公開します。以下に示すように、コントロールのプロパティを設定するだけです。
MSDNから
:
<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>
を無効にする、私はnullに設定仮定しますか? –