Ahoj.
Pokouším se v ASP.NET o práci ze soubory. Pokouším se přesněji o blog. Tet vás asi napadne, proč ten blázen nepoužije databázi, ale je to z určitých osobních důvodů :-)
Mám tedy tento problém. Mám složku Blog a v ní složky s rokem: 2008, 2009, 20010, ... V každé s těch složek jsou další složky, tentokrát měsíce ( leden, únor, březen, ...)
Tím vytvářím položky menu. Rozdíl je v tom, že rok, se v menu zobrazuje jako položka s atributem enabled=false;. Pod tím jsou položky s odkazem na měsíc.
Tady je problém. Potřebuju, aby když se klikne na název měsíce v určitém roce, tak aby se uživatel dostal do složky např: Blog/2008/prosinec/Default.aspx
Mám tento kód:
foreach (DirectoryInfo DirectoryName001 in new DirectoryInfo(Server.MapPath("Blog/")).GetDirectories())
{
MenuItem YearItem = new MenuItem();
YearItem.Value = DirectoryName001.Name;
YearItem.Enabled = false;
BlogMenu001.Items.Add(YearItem);
foreach (DirectoryInfo DirectoryName002 in new DirectoryInfo(Server.MapPath("Blog/" + DirectoryName001.Name)).GetDirectories())
{
MenuItem MonthItem = new MenuItem();
MonthItem.Text = DirectoryName002.Name;
MonthItem.NavigateUrl = "Blog/" + DirectoryName001.Name + "/" + DirectoryName002.Name + "/" + "";
BlogMenu001.Items.Add(MonthItem);
}
}
Ten právě prohledává ty složky a vytváří položky menu.
Je tu ale problém s odkázáním na soubor default, v určitém měsíci. Asi mám něco špatně, ale nevím co. Na ten soubor default.aspx se nemůžu dostat.
Píše to tuto chybu ( viz. obrázek )
Nemůžu se na něj dostat dokonce ani tehdy, když kliknu přímo na ten soubor Default.aspx a dám View in Browser.
Pokud jsem měl v web.config nastaveno debug=false, tak to psalo, že část cesty nebyla nalezena: neco/Blog/2008/prosinec/Blog.
A právě to blog tam zavazí. po prosinci má být přímo soubor Default.aspx.
Prosím poradte mi někdo...