Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno C# Dataset bez DB

Áno, pred databázou je webový server. Ale ten akože nerobí nič iné, len poskytuje prístup k databáze? Dokonca cez SQL priamo v URL adrese? To nie je dobre.

DataSet sa dá posielať zo servera na klienta a naopak. Ide o odpojené dáta, môžeš ich posielať hocikam a keď sa ti potom vrátia, tak ich vieš jednoducho uložiť do databázy. Nad použitím DataSetu by som ale začal teoreticky uvažovať až v prípade, že by tie dáta mali byť odpojené od databázy dlhší čas - dovtedy máš kopec iných vhodnejších možností.

Vo všeobecnosti server nebýva len taký hlúpy poskytovateľ dát, ako ho máš teraz. Obyčajne to v tvojom prípade (tučný klient) funguje tak, že server poskytuje služby, ktoré klient volá. Takže klient si vypýta nejaké informácie a server mu ich poskytne - klient si pýta od servera informácie spôsobom "daj mi detail klienta spolu s jeho objednávkami", nie že "selektni mi takéto riadky". A server mu ich poskytne ako objekty, pričom ti môže byť v podstate jedno, či to ide cez JSON alebo SOAP - podstatné je, že stále pracuješ so svojimi objektami, nepotrebuješ na to žiaden DataSet. Následne klient povie napríklad, že pridaj tomuto klientovi takúto objednávku, t.j. pošleš na server objekt typu objednávka a server ho uloží do databázy - opäť nepotrebuješ žiaden DataSet.

To, že kde si držíš dáta (objekty) na strane klienta, závisí len a len od toho, čo s tými dátami potrebuješ robiť. Zjednodušene povedané, ak ich potrebuješ zobrazovať len na jednej obrazovke, tak si ich pamätáš len pre tú jednu obrazovku. Ak ich potrebuješ mať v pamäti neustále, tak si ich pamätáš v tej svojej aplikácii. Nepotrebuješ na to nič ďalšie typu DataSet.

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny