0

キャッシュされた .net アプリケーション変数があります。私がやりたいことは、1、1.30、2、2.30などの30分ごとに変数をリサイクルするためにキャッシュを取得することです.onRemoveCallback関数が設定されていて、すべてが機能します.正しいabsoluteExpiration値?

DateTime time_to_expire = DateTime.Now;
            if (time_to_expire.Minute < 29)
            {
                time_to_expire = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, DateTime.Now.Hour, 30, 0);
            }
            else
            {
                time_to_expire = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, DateTime.Now.Hour + 1, 0, 0);
            }

time_to_expire の値を 29 にテストする理由は、境界のケースが心配で、変数が 30 分間「空白になる」ことを望まないからです。これを改善する方法についてのアイデアはありますか?

ありがとう

4

1 に答える 1

0

それが「より良い」かどうかはわかりませんが、次のようなことをしたいと思います:

        DateTime time_to_expire = DateTime.Now.AddMinutes(30);
        time_to_expire = new DateTime(time_to_expire.Year, time_to_expire.Month, time_to_expire.Day, time_to_expire.Hour, time_to_expire.Minute >= 30 ? 30 : 0, 0);
于 2012-12-07T19:57:32.597 に答える