webForumDet fria alternativet

DataSets?

3 svar · 379 visningar · startad av echoSwe

echoSweMedlem sedan nov. 20041 189 inlägg
#1

Hej!

Jag undrar varför vissa här på forumet säger att "DataSet"s är av ondo - medan andra säger att de är prestandahöjande jämfört med XML - handlar det enbart om prestanda? Är DataTables bättre?

Sedan undrar jag om ni alla använder n-tier designer för webben - ett datalager, ett affärslager och ett presentationslager?

Henke

emissionMedlem sedan dec. 19996 721 inlägg
#2

Ett DataSet är i princip en collection av DataTables, med lite extra lull-lull. Om man inte behöver detta lull-lull så bör man definitivt använda DataTable i stället. DataSet är inte av ondo, men all den funktionalitet de erbjuder kan också kosta en del prestanda. Huruvida kostnaden är för hög eller inte kan endast du och dina funktionalitetskrav avgöra.

JosefMedlem sedan mars 20023 561 inlägg
#3

emission skrev:

Huruvida kostnaden är för hög eller inte kan endast du och dina funktionalitetskrav avgöra.

Eller hur lat man är. ;)

Gällande n-tierfrågan är det lite olika. Det varierar från projekt till projekt.

GladhMedlem sedan maj 20012 812 inlägg
#4

Jag undrar varför vissa här på forumet säger att "DataSet"s är av ondo - medan andra säger att de är prestandahöjande jämfört med XML - handlar det enbart om prestanda? Är DataTables bättre?

Precis som emission säger så finns det en del "lull lull" i dataset som man oftas inte använder och därför bör man använda sig av andra "lättare" objekt, som en datatable. Om du däremot tänker bygga ett system som skall klara av att hålla referenser mellan olika tabuläradatamängder så är datasetet precis det du skall använda.

Anledningen till att många säger att du inte skall använda dig av DataSet är att de alltid serializeras till XML. Samt att det inte fungerar så bra vid webservices.
Det finns exempel på projekt där man byggt stora lösningar med remoting som kommunikationslager mellan olika delar av lösningen man har valt remoting/binary för att hålla uppe prestandan istället för att använda sig av WebServices. Problemet är att man har sedan valt att skicka Dataset över remoting.

Det är så att när datasetet sedan skall serializeras för att skickas över remoting så har detta gjorts med XML-serializering fast man har valt att man vill ha binary i remotingen. Alltså har man fått en onödigt prestandahit, som faktiskt inte är att skoja med.

Ett annat problem är att om man bygger webservices och skickar tillbaka DataSet så har man iprincip begränsat sig till att använda .NET som klientmaskin, då andra programmeringsspråk så som Java inte har en anning om vad DataSet är för objekt och det skapar problem när Java skall prata med webservicen.

- M

266 ms totalt · 3 externa anrop · v20260731065814-full.30151723
136 ms — hämta forumlista (db)
126 ms — hämta statistik (db)
127 ms — hämta tråd, inlägg och bilagor (db)