473,327 Members | 2,055 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,327 software developers and data experts.

How is DataSet class implemented

I heard somewhere that the DataGrid class is implemented as a XML graph in
memory. Is this true ?

TIA
Boaz Ben-Porat
DataPharm a/s
Denmark
Nov 15 '05 #1
6 2652

Hi Boaz,

The dataset class can be easily display as a xml graph, you can just
display it like this:
Console.WriteLine( ds.GetXml() );
Also, dataset can manipulate the xml file freely by writexml method

Best regards,
Jeffrey Tan
Microsoft Online Partner Support
Get Secure! - www.microsoft.com/security
This posting is provided "as is" with no warranties and confers no rights.

--------------------
| From: "Boaz Ben-Porat" <bo***@datapharm.dk>
| Subject: How is DataSet class implemented
| Date: Wed, 1 Oct 2003 17:19:16 +0200
| Lines: 9
| X-Priority: 3
| X-MSMail-Priority: Normal
| X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
| X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
| Message-ID: <OC**************@TK2MSFTNGP11.phx.gbl>
| Newsgroups: microsoft.public.dotnet.languages.csharp
| NNTP-Posting-Host: 195.215.64.74
| Path: cpmsftngxa06.phx.gbl!TK2MSFTNGP08.phx.gbl!TK2MSFTN GP11.phx.gbl
| Xref: cpmsftngxa06.phx.gbl microsoft.public.dotnet.languages.csharp:188393
| X-Tomcat-NG: microsoft.public.dotnet.languages.csharp
|
| I heard somewhere that the DataGrid class is implemented as a XML graph in
| memory. Is this true ?
|
| TIA
| Boaz Ben-Porat
| DataPharm a/s
| Denmark
|
|
|

Nov 15 '05 #2
Thanks Jeffry

My question is:
Is Reading and manipulating data in DataSet more effective or less effective
then reading and mnipulating in custom developed objects. If DataSet IS
implemented as one large XML document in RAM then I suspect it is NOT the
most effective structure. Am I right ?

TIA
Boaz Ben-Porat
DataPharm a/s
Denmark

"Jeffrey Tan[MSFT]" <v-*****@online.microsoft.com> skrev i en meddelelse
news:vx**************@cpmsftngxa06.phx.gbl...

Hi Boaz,

The dataset class can be easily display as a xml graph, you can just
display it like this:
Console.WriteLine( ds.GetXml() );
Also, dataset can manipulate the xml file freely by writexml method

Best regards,
Jeffrey Tan
Microsoft Online Partner Support
Get Secure! - www.microsoft.com/security
This posting is provided "as is" with no warranties and confers no rights.

--------------------
| From: "Boaz Ben-Porat" <bo***@datapharm.dk>
| Subject: How is DataSet class implemented
| Date: Wed, 1 Oct 2003 17:19:16 +0200
| Lines: 9
| X-Priority: 3
| X-MSMail-Priority: Normal
| X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
| X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
| Message-ID: <OC**************@TK2MSFTNGP11.phx.gbl>
| Newsgroups: microsoft.public.dotnet.languages.csharp
| NNTP-Posting-Host: 195.215.64.74
| Path: cpmsftngxa06.phx.gbl!TK2MSFTNGP08.phx.gbl!TK2MSFTN GP11.phx.gbl
| Xref: cpmsftngxa06.phx.gbl microsoft.public.dotnet.languages.csharp:188393 | X-Tomcat-NG: microsoft.public.dotnet.languages.csharp
|
| I heard somewhere that the DataGrid class is implemented as a XML graph in | memory. Is this true ?
|
| TIA
| Boaz Ben-Porat
| DataPharm a/s
| Denmark
|
|
|

Nov 15 '05 #3
What I heard is that DataSet is ACTUALLY implemented as a XML graph in
RAM, and thus ineffective when used to other operations then direct data
manipulation.

We are at the design phase of a very large system, to be implemented in
C#/.NET. We should generate (automatically) a datatype for each
table/view/stored-procedure(proc`s result set). The easiest way is to
generate a typed DataSet for each object (This can be done with 10 line
of code.

Anotehr soloution is to write a code generator that creates a C# class
for each such object. My company has experince with this.

These objects, either custom objects or Typed DataSet (where DataRow is
the base object) are used for wide range of manipulations.

The Question:
-------------
Is DataSet effective in such scenario ?
If it is an XML graph in RAM then I suspect it is NOT effective.

Any advise ?

TIA
Boaz Ben-orat
DataPharm a/s
Denmark

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!
Nov 15 '05 #4
Hi Boaz,

I don't think so, that the dataset can be represented as a XML document has
nothing to do with its internal way to keep the data once it's readed from a
XML file. You can take a look at the .net source ( I don't remember where
you can get them, I will let you know if I remember) and see how the DataSet
is implemented.
Cheers,

--
Ignacio Machin,
ignacio.machin AT dot.state.fl.us
Florida Department Of Transportation

"Jeffrey Tan[MSFT]" <v-*****@online.microsoft.com> wrote in message
news:vx**************@cpmsftngxa06.phx.gbl...

Hi Boaz,

The dataset class can be easily display as a xml graph, you can just
display it like this:
Console.WriteLine( ds.GetXml() );
Also, dataset can manipulate the xml file freely by writexml method

Best regards,
Jeffrey Tan
Microsoft Online Partner Support
Get Secure! - www.microsoft.com/security
This posting is provided "as is" with no warranties and confers no rights.

--------------------
| From: "Boaz Ben-Porat" <bo***@datapharm.dk>
| Subject: How is DataSet class implemented
| Date: Wed, 1 Oct 2003 17:19:16 +0200
| Lines: 9
| X-Priority: 3
| X-MSMail-Priority: Normal
| X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
| X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
| Message-ID: <OC**************@TK2MSFTNGP11.phx.gbl>
| Newsgroups: microsoft.public.dotnet.languages.csharp
| NNTP-Posting-Host: 195.215.64.74
| Path: cpmsftngxa06.phx.gbl!TK2MSFTNGP08.phx.gbl!TK2MSFTN GP11.phx.gbl
| Xref: cpmsftngxa06.phx.gbl microsoft.public.dotnet.languages.csharp:188393 | X-Tomcat-NG: microsoft.public.dotnet.languages.csharp
|
| I heard somewhere that the DataGrid class is implemented as a XML graph in | memory. Is this true ?
|
| TIA
| Boaz Ben-Porat
| DataPharm a/s
| Denmark
|
|
|

Nov 15 '05 #5
Does it matter how it is implemented? Test both methods and compare the difference, if the dataset does use xml underneath but is
somehow more efficient then it doesn't really matter.

--
Michael Culley
"Boaz Ben-Porat" <bo***@datapharm.dk> wrote in message news:eW**************@TK2MSFTNGP10.phx.gbl...
What I heard is that DataSet is ACTUALLY implemented as a XML graph in
RAM, and thus ineffective when used to other operations then direct data
manipulation.

We are at the design phase of a very large system, to be implemented in
C#/.NET. We should generate (automatically) a datatype for each
table/view/stored-procedure(proc`s result set). The easiest way is to
generate a typed DataSet for each object (This can be done with 10 line
of code.

Anotehr soloution is to write a code generator that creates a C# class
for each such object. My company has experince with this.

These objects, either custom objects or Typed DataSet (where DataRow is
the base object) are used for wide range of manipulations.

The Question:
-------------
Is DataSet effective in such scenario ?
If it is an XML graph in RAM then I suspect it is NOT effective.

Any advise ?

TIA
Boaz Ben-orat
DataPharm a/s
Denmark

*** Sent via Developersdex http://www.developersdex.com ***
Don't just participate in USENET...get rewarded for it!

Nov 15 '05 #6
Boaz,
As Ignacio stated, the DataSet is not implemented internally as one large
XML document.

It is implemented as a collection of DataTable objects, DataTables are
implemented as a collection of DataColumn & DataRow objects. DataRow objects
are implemented as an array of System.Object objects.

Remember when you put value types into a Sytem.Object you need to box &
unbox them, so there is a performance hit there. Also the fact the DataRow
has an array of them, there is a second hit.

If by "custom developed objects" you mean a formal domain model, I would
expect the formal domain model to be more performant as it should be doing
less boxing & unboxing and have fewer collections.

David Sceppa's book "Microsoft ADO.NET - Core Reference" from MS Press
covers all aspects of DataSets and how they are organized.

Martin Fowlers book "Patterns of Enterprise Application Architecture" from
Addison Wesley provides a number of patterns for getting data from a
database to & from your domain model & patterns on using DataSets verses
domain models.

Rockford Lhotka's book "Expert One-on-One Visual Basic .NET Business
Objects" from APress (formally from Wrox) provides the CSLA.NET framework
which gives you the flexibility of a DataSet while defining a formal Domain
Model.

Hope this helps
Jay
"Boaz Ben-Porat" <bo***@datapharm.dk> wrote in message
news:eC**************@TK2MSFTNGP12.phx.gbl...
Thanks Jeffry

My question is:
Is Reading and manipulating data in DataSet more effective or less effective then reading and mnipulating in custom developed objects. If DataSet IS
implemented as one large XML document in RAM then I suspect it is NOT the
most effective structure. Am I right ?

TIA
Boaz Ben-Porat
DataPharm a/s
Denmark

"Jeffrey Tan[MSFT]" <v-*****@online.microsoft.com> skrev i en meddelelse
news:vx**************@cpmsftngxa06.phx.gbl...

Hi Boaz,

The dataset class can be easily display as a xml graph, you can just
display it like this:
Console.WriteLine( ds.GetXml() );
Also, dataset can manipulate the xml file freely by writexml method

Best regards,
Jeffrey Tan
Microsoft Online Partner Support
Get Secure! - www.microsoft.com/security
This posting is provided "as is" with no warranties and confers no rights.
--------------------
| From: "Boaz Ben-Porat" <bo***@datapharm.dk>
| Subject: How is DataSet class implemented
| Date: Wed, 1 Oct 2003 17:19:16 +0200
| Lines: 9
| X-Priority: 3
| X-MSMail-Priority: Normal
| X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
| X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
| Message-ID: <OC**************@TK2MSFTNGP11.phx.gbl>
| Newsgroups: microsoft.public.dotnet.languages.csharp
| NNTP-Posting-Host: 195.215.64.74
| Path: cpmsftngxa06.phx.gbl!TK2MSFTNGP08.phx.gbl!TK2MSFTN GP11.phx.gbl
| Xref: cpmsftngxa06.phx.gbl microsoft.public.dotnet.languages.csharp:188393
| X-Tomcat-NG: microsoft.public.dotnet.languages.csharp
|
| I heard somewhere that the DataGrid class is implemented as a XML

graph in
| memory. Is this true ?
|
| TIA
| Boaz Ben-Porat
| DataPharm a/s
| Denmark
|
|
|


Nov 15 '05 #7

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
by: Frosty | last post by:
Hi I am using the VS xsd designer to create a strongly typed dataset. The dataset is apparently successfully created, with no warnings or errors given. Is it not then to be expected that this...
2
by: JS | last post by:
I'm trying to create a data layer and having problems returning a DataSet from my code that's in a class module. Please forgive me. I'm new to C# (VB'er). I decided to create my data layer in...
3
by: news.microsoft.com | last post by:
The question is, is a DataSet CLS compliant? Minimally implemented code, with an attribute in the assemblyinfo.cs compiles just fine (is it possibly the data INSIDE the dataset that could...
2
by: ofer | last post by:
Hi, I am working with the beta version of the new .net framework (Whidbey) and I encountered a problem with serialization that did'nt exist in the .net 2003 the situation is like this : I have...
9
by: Dave | last post by:
Compilier will not recognize DataSet object. As you can see below is from a test simple form with no other code. I'm just trying to get any Aspx form to recognize the DataSet object. You can...
2
by: Gary Shell | last post by:
I have jumped in to the deep end of the pool, trying out visual inheritance of a form and have run into a snag. I have the need to create a simple maintenance form for five identically...
17
by: Modica82 | last post by:
Hi All, I am very new to web services, so am struggling to understand exactly what I am doing with regards to its returns etc. I have been given the task of designing and developing a web...
15
by: Joseph Geretz | last post by:
I'm a bit puzzled by the current recommendation not to send Datasets or Datatables between application tiers. http://support.microsoft.com/kb/306134 ...
5
by: Tony Johansson | last post by:
Hello! Xml is used havily when dealing with DataSet. I know that Xml schema is used by DataSet. Xml schema is used to verify the structure of an Xml document. So does this mean that a DataSet...
0
by: DolphinDB | last post by:
Tired of spending countless mintues downsampling your data? Look no further! In this article, you’ll learn how to efficiently downsample 6.48 billion high-frequency records to 61 million...
0
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, we are pleased to welcome back...
0
by: Vimpel783 | last post by:
Hello! Guys, I found this code on the Internet, but I need to modify it a little. It works well, the problem is this: Data is sent from only one cell, in this case B5, but it is necessary that data...
0
by: ArrayDB | last post by:
The error message I've encountered is; ERROR:root:Error generating model response: exception: access violation writing 0x0000000000005140, which seems to be indicative of an access violation...
1
by: PapaRatzi | last post by:
Hello, I am teaching myself MS Access forms design and Visual Basic. I've created a table to capture a list of Top 30 singles and forms to capture new entries. The final step is a form (unbound)...
1
by: Defcon1945 | last post by:
I'm trying to learn Python using Pycharm but import shutil doesn't work
1
by: Shællîpôpï 09 | last post by:
If u are using a keypad phone, how do u turn on JavaScript, to access features like WhatsApp, Facebook, Instagram....
0
by: af34tf | last post by:
Hi Guys, I have a domain whose name is BytesLimited.com, and I want to sell it. Does anyone know about platforms that allow me to list my domain in auction for free. Thank you
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 3 Apr 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome former...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.