アプリの日時表示に繰り返しイベントを表示したい。この日時表示はカレンダーの形をとることができますが、今後のイベントのリストにすることもできます。
繰り返す可能性のあるこのイベントの追跡を処理する最善の方法は何ですか?
例: イベントをデータベースに 1 回格納し、表示コードで数回投影/繰り返す必要がありますか? イベントを数回保存してからレンダリングする必要がありますか?
以前にこのようなことを行い、SQL Server の sysschedules テーブルに基づいてスキーマを作成しました。
http://technet.microsoft.com/en-us/library/ms178644.aspx
上にリンクされているスキーマを使用すると、ジョブ (イベント) のスケジュールを保存できます。次に、スケジュールに基づいてイベントが発生する日付を計算できます。これは長い計算になる可能性があるため、その結果をどこかにキャッシュしようとします。
イベントの種類にもよると思います。クリスマスのように、ある出来事が起こると、次の出来事が起こるまで本当に興味がないのでしょうか? それとも、「毎月必ずお母さんに電話する」のようなタスクですか?
私が最近後者を実装した方法の 1 つは、next_occurrence (日付)、reoccurence_period (週、月、年など) 列を持つレコードを作成することでした。次の発生が近づくと、それがリストに表示されるようにします。それが通過すると、リストアイテムにはリサイクルアイコンが表示され、これを押すとレコードが次の将来の出現に更新されます。
繰り返しますが、これがあなたの状況に当てはまるかどうかはわかりませんが、私の場合はうまくいきました.