Kategorie a podkategorie v jednom   otázka

ASP.NET WebForms, SQL

Ahoj all, prosím pomůžete mi dořešit následující problém???

Potřebuji udělat stránku na které se budou vypisovat kategorie a podkategorie

Tabnulky pro to vypadají následovně:

Create Table [dbo].InsuranceCategories
(
	[TypeInsurance] nvarchar(100) not null,
	
	CONSTRAINT PK_InsuranceCategories PRIMARY KEY CLUSTERED (TypeInsurance ASC)
)

Create table [dbo].[Insurance]
(
	[IdInsurance] int identity(1,1) not null,
	[Description] nvarchar(max) null,
	[Images] varchar(max) null,
	[Price] varchar(max) null,
	[URLInsurance] varchar(max) null,
	[TypeInsurance] nvarchar(100) not null,
	
	CONSTRAINT PK_Insurance PRIMARY KEY CLUSTERED (IdInsurance ASC),
	CONSTRAINT FK_Insurance_InsuranceCategories FOREIGN KEY (TypeInsurance) 
           REFERENCES dbo.InsuranceCategories (TypeInsurance) ON UPDATE CASCADE ON DELETE CASCADE
)

Mockrát děkuji

Michal Jelínek

nahlásit spamnahlásit spam -2 / 2 odpovědětodpovědět

V čem se "budou" vypisovat..DataList,GridView,ListView..? Na základě čeho se mají data vypisovat..querystring,linq,..?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

vypisovat se budou v DataList QueryString

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

ahoj all, prosimVás myslíte že by jste mi mohli pomoci o nejrychleji protože to mám do webu na zakázku a do konce týdne to musím mít hotovo

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Děláte web na zakázku a neznáte naprosté základy ASP.net a SQL???!Ach bože...

Pokud v query string předáváte jméno dané kategorie,tak jen v SqlDataSource nastavíte podmínku(where) pro select produktů,které patří do dané kategorie.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

to vím jak nastavit where ale mě jde o to jak spíše správně nastavit ten DataList aby to fungovalo přesně tak jak chci a aby se to především vypisovalo tak jak chci

Zde příklad

Název kategorie
     Název podkategorie
     Název podkategorie
     Název podkategorie
Název kategorie
     Název podkategorie
     Název podkategorie
     Název podkategorie
Název kategorie
     Název podkategorie
     Název podkategorie
     Název podkategorie

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

Tak použijte vnořené DataListy, anebo si data vytáhněte přes SqlConnection a SqlCommand a podle toho, jestli je to kategorie, nebo podkategorie, udělejte odsazení.

Bohužel teď nemám čas psát o tom článek, jak jsem měl v plánu.

A obecně dobrý nápad je neslibovat zákazníkům něco, co nezvládnete naprogramovat.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Je pravda, že nemůžu jinak než nesouhlasit s ostatníma v tom, že slibovat něco, co naprosto jasně víte, že nevíte wůbec jak na to, je naprostá volovina, takový zákazník se na Vás pak příště určitě obrátí znova :) A i reference určitě čekat nemůžete.

No a teď k Vašemu problému. Problém se dá vyřešit třeba takto:

1. Napsat si vlatního poskytovatele mapy webu, který bude pracovat s databází navrženou tak, aby byla schopná ukládat hierarchická data(do se vyřeší lehce pomocí přidání řádku ParentID typu Int, který nám bude ukládat rodičovskou kategorii). Jak napsat jednoduchý poskytoval mapy webu tu již popisoval Tomáš Herceg v jiném článku takže doporučuji podrobně nastudovat. Jakmile tento článek nastudujete, budete vědět, jak dostat z takového databáze mapu webu s jedním "potomkem" navigačního stromu. A teď, jak dostat celý navigační strom ? Musíte celý strom databáze projít rekurzivně. Postupně hledáte potomky rodičovských odkazů a zjišťujete, zda nemá nějakého potomka, takto projedete celý strom a dostaneta tak celou mapu včetně potomků. Tím pádek již víte, jak projít strom navigačního menu. A obdobným způsobem pak projdete celý strom s tím rozdílem, že teď tímto rekurzivním průchodem naplníte nějaký zobrazovací prvek(třeba DDL nebo něco takového), kde nadřazené a podřazené větve navigace jen odsadítě nějakým způsobem(třeba jednoduše |-- |---- |------).

No, přesný postup sem určitě vypisovat nebudu(bylo by to hodně dlouhé a není na to čas), to by jste se pak nic nenaučil. Pro inspiraci doporučuji podívat se na www.codeproject.com, kde určitě najdete několik hezkých způsobů, jak donutit prvky ASP.NET zobrazovat hierarchická data nebo použijte google...

nahlásit spamnahlásit spam 2 / 2 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback