2008-12-10 18 views
7

Chciałbym wyświetlić powtarzające się wydarzenie na wyświetlaczu daty/godziny w aplikacji. Ta data może być wyświetlana w postaci kalendarza, ale może to być po prostu lista nadchodzących wydarzeń.Jak śledzić powtarzające się zdarzenia kalendarza w C#/SQL Server?

Jaki jest najlepszy sposób na śledzenie śledzenia tego wydarzenia, które może się powtórzyć?

Na przykład: Czy zdarzenie powinno być raz przechowywane w bazie danych i wyświetlane kilka razy w kodzie wyświetlacza? Czy zdarzenie powinno być przechowywane kilka razy, a następnie renderowane?

Odpowiedz

3

Zrobiłem coś takiego wcześniej i oparłem mój schemat na tabeli tabel sysschedules SQL Servers.

http://technet.microsoft.com/en-us/library/ms178644.aspx

Schemat powiązany powyżej pozwoli na przechowywanie harmonogram pracy (zdarzenia). Następnie możesz obliczyć daty występowania zdarzenia w oparciu o harmonogram. Może to być długa kalkulacja, więc spróbowałbym gdzieś ukryć ten wynik.

1

Myślę, że to zależy od rodzaju zdarzenia. Czy to jest jak w Boże Narodzenie, kiedy raz przychodzi i zdarza się, że naprawdę nie jesteś nim zainteresowany aż do następnego zdarzenia? A może jest to zadanie typu "Upewnij się, że dzwonię do mojej mamy co miesiąc", gdzie, jeśli to się zdarzy, a przegapiłeś to, nie chcesz, żeby to odeszło?

Jednym ze sposobów, w jaki ostatnio wprowadziłem to drugie, było posiadanie rekordu zawierającego kolumny next_occurrence (date), reoccurence_period (weekly, monthly, yearly, etc). Tak więc przy następnym wystąpieniu pojawi się na liście. Po przejściu element listy miałby ikonę recyklingu, która po naciśnięciu zaktualizowałaby rekord do następnego wystąpienia w przyszłości.

Ponownie, nie jestem pewien, czy to dotyczy twojej sytuacji, ale zadziałało dobrze dla mojej.

Powiązane problemy