ASP.NETにはすばらしいキャッシュ機能がありますが、このシナリオに同じロジックを適用するにはどうすればよいですか?これはバックグラウンドアプリケーションです。ウェブではありません。データベースから要求を繰り返すのではなく、キャッシュされたオブジェクトを取得してメモリから戻したいと考えています。パラメータc
,a
およびcu
の各一意の一致ごとの最初の要求のみがデータベースを呼び出す必要があります。たとえば、6時間ごとに言います。Db-Resultsetをキャッシュする - ベストプラクティスですか? (ASP.NETではなくアプリケーション)
コンストラクタは、3つのパラメータをとり、3つのリストのためのセッターとして機能します。コンストラクタは、0〜300個の厳密に選択されたデータ行のすっきりしたコレクションを受け取ります。しかし、要求の緊張の量。
(サンプルと、ネーミング・擬似であることに注意してください)
/// <summary>
/// Constructor
/// </summary>
public Collect(string c, string a, string cu)
: base(c, a, cu)
{
db = new DatabaseInstance();
// DObject
this._d = (from d in db.DObject
where ....
select d).ToList();
// SObject
this._s = (from s in db.SObject
where ......
select s).ToList();
// MObject
this._v = (from mv in db.MObject
where ......
select mv).ToList();
}
おそらく、それがポイントでした。ごめんなさい。それはグーグルのために十分に簡単でした。最初は混乱していました。なぜなら、私が得たものはすべて、ウェブキャッシングと、エンタープライズレベルのフレームワークのような重い代替サンプルに関連していたからです。 Memorycacheそれをやった! – Independent