none
Práce s DateTime v asp

    Dotaz

  •  

    Zdravím,

    Dostal jsem se do docela zajímavého problému. Mám v databázi uložené datum kdy událost začala a kdy byla/bude ukončena. No a potřebuji pomocí tohoto rozsahu zablokovat dny v kalendáři. Kalendář je typická komponenta asp.net - Calendar.

    Takže jsem si říkal, že si vytáhnu ty dvě data a uložim si je do struktury DateTime. Mám tedy dvě struktury, dokonce jsem si i pomocí diffu zjistil, kolik dní je rozdíl.(Otázka je jestli je to relevantní)

    Tak a teď potřebuji nějak dostat dny, které jsou v rozmezí. Tyto dny bych rád dostal do pole a při renderu kalendáře bych porovnal toto pole s aktuálním dnem a pokud se pole a den shodují, tak bych den disabloval.

    Doufám, že jsem to napsal srozumitelně. Důležitý je pro mě krok, kdy se snažím zjistit všechny dny v nějakém intervalu. Dejme tomu v db mám uložené něco jako 10-12.2008|13-12.2008 a ty tři dny potřebuji dostat do pole.

    Za každou radu předem díky

    středa 28. ledna 2009 12:24

Odpovědi

  • Moc nechápu, proč zrovna potřebujete pole jednotlivých dat, ale možná je to tím, že nepužívám ten zběsilý control asp:Calendar.

    Pole můžete vyrobit třeba nějak takhle:

    DateTime[] pole = new DateTime[(datumStart - datumEnd).Days];  
     
    for (int i = 0; i < (datumStart - datumEnd).Days; i++)  
    {  
        pole[i] = datumStart.AddDays(i);  
    }  
     

    ...snad jsem to z voleje moc nepokonil.


    Robert Haken, Microsoft MVP ASP/ASP.NET, HAVIT, s.r.o., www.havit.cz, http://knowledge-base.havit.cz
    středa 28. ledna 2009 15:23
    Moderátor

Všechny reakce

  • Moc nechápu, proč zrovna potřebujete pole jednotlivých dat, ale možná je to tím, že nepužívám ten zběsilý control asp:Calendar.

    Pole můžete vyrobit třeba nějak takhle:

    DateTime[] pole = new DateTime[(datumStart - datumEnd).Days];  
     
    for (int i = 0; i < (datumStart - datumEnd).Days; i++)  
    {  
        pole[i] = datumStart.AddDays(i);  
    }  
     

    ...snad jsem to z voleje moc nepokonil.


    Robert Haken, Microsoft MVP ASP/ASP.NET, HAVIT, s.r.o., www.havit.cz, http://knowledge-base.havit.cz
    středa 28. ledna 2009 15:23
    Moderátor
  • Děkuji za odpověď.

    Vypadá to, že by to mohlo fungovat. Jinak možná jsem se špatně vyjádřil. Mám v databázi určité datumy a podle nich potřebuju v kalendari disablovat dny, které už jsou obsazené...

    čtvrtek 29. ledna 2009 7:47