472,810 Members | 4,387 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

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

Data Access Layer using TableAdapter & Performance / Packaging

I have a question / concern regarding the new suggested way of creating a
data access layer in an n-tier application. Typically, a web application
specifically, using the SOA (Service Oriented Architecture) approach.

At various sites such as 15 Seconds
(http://www.15seconds.com/issue/050721.htm) they advocate using the
TableAdapter wizard to generate the data access layer.

Describing the TableAdapter wizard, here is a quote from the above site:

"A TableAdapter connects to a database, executes queries, or stored
procedures against a database, and fills a DataTable with the data returned
by the query or stored procedure. In addition to filling existing data tables
with data, TableAdapters can return new data tables filled with data. The
TableAdapter Configuration Wizard allows you to create and edit TableAdapters
in strongly typed datasets. The wizard creates TableAdapters based on SQL
statements or existing stored procedures in the database. Through the wizard,
you can also create new stored procedures in the database."

Here is my question / concern: Isn't using IDataReader or a derived class a
much more performant way of accessing data?

In the past I have read several articles and have done the benchmark tests
myself, showing that doing crud operations through a data set is much more
performance inhibitive than using the lightweight objects and methods to
accomplish it.

A good article proving my point is the following:

http://aspnet.4guysfromrolla.com/dem.../050405-1.aspx

So then, has things changed so much in .Net 2.0 datasets and data objects
that the performance gap between datasets and lighterweight objects has been
closed?!? I doubt it. But please, do convince me! I *want* to make life
easier for myself, just not at the expense of sacraficing performance.

--
-Demetri
May 5 '06 #1
1 4452
>Isn't using IDataReader or a derived class a >much more performant way of
accessing data?
I was under the same impression until I tried the table adapter. I am still
a bit leery, but perf is not my concern any more. The table adapters smoke,
speed wise.
--
Gregory A. Beamer

*************************************************
Think Outside the Box!
*************************************************
"Demetri" <De*****@discussions.microsoft.com> wrote in message
news:03**********************************@microsof t.com...I have a question / concern regarding the new suggested way of creating a
data access layer in an n-tier application. Typically, a web application
specifically, using the SOA (Service Oriented Architecture) approach.

At various sites such as 15 Seconds
(http://www.15seconds.com/issue/050721.htm) they advocate using the
TableAdapter wizard to generate the data access layer.

Describing the TableAdapter wizard, here is a quote from the above site:

"A TableAdapter connects to a database, executes queries, or stored
procedures against a database, and fills a DataTable with the data
returned
by the query or stored procedure. In addition to filling existing data
tables
with data, TableAdapters can return new data tables filled with data. The
TableAdapter Configuration Wizard allows you to create and edit
TableAdapters
in strongly typed datasets. The wizard creates TableAdapters based on SQL
statements or existing stored procedures in the database. Through the
wizard,
you can also create new stored procedures in the database."

Here is my question / concern: Isn't using IDataReader or a derived class
a
much more performant way of accessing data?

In the past I have read several articles and have done the benchmark tests
myself, showing that doing crud operations through a data set is much more
performance inhibitive than using the lightweight objects and methods to
accomplish it.

A good article proving my point is the following:

http://aspnet.4guysfromrolla.com/dem.../050405-1.aspx

So then, has things changed so much in .Net 2.0 datasets and data objects
that the performance gap between datasets and lighterweight objects has
been
closed?!? I doubt it. But please, do convince me! I *want* to make life
easier for myself, just not at the expense of sacraficing performance.

--
-Demetri

May 6 '06 #2

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

Similar topics

9
by: Tony Lee | last post by:
Some time a ago, on this newsgroup the following comments were made in recommending good references for Access (2003) >I used to recommend Dr. Rick Dobson's, "Programming Access <version>" for...
4
by: Oyvind | last post by:
I'm working on a Windows forms/C# database application. My background is 6-7 years of VB 4 - 6, MS Access, VC++, mixed in with a lot of T-SQL and MS SQL Server in general and some OOA/OOD. ...
1
by: Johann Blake | last post by:
I am looking for a good solution on how to implement data access in an application so that there is a clean separation between the data access layer, the business layer and the GUI layer. I am...
5
by: jqpdev | last post by:
Hello all... I'm coming from a Borland Delphi background. Delphi has a specific component called a Data Module. In the designer the Data Module behaves like a windows form. A developer can...
1
by: dbuchanan | last post by:
Hello, A section in Data Sources window is mystifying to me. In the case of my code the Data Sources window shows my references to the data access layer. First here is what I see in my Data...
15
by: philip | last post by:
On a form, I have a datagridview. This datagridview is constructed on a dataset filled by a tableadapter. The table adapter do very well what it must do when filling dataset. Insertions,...
0
by: Lance | last post by:
I am trying to add a new Data Layer Class in Visual Studio Express. Just a heads up, but I am new to this technology. In the tutorial I am using, it gives these instructions: "2. In the...
11
by: sanders_mike_newsgroups | last post by:
Hi I have a web app that needs to be able to use either SQL Server or MS Access - depending upon the installation. I want to avoid having unnessesary amounts of code (eg: dim x as...
10
by: Martin Hughes | last post by:
Hi guys, I was wondering if anyone could give me some advice. I am looking to develop an ASP.NET application that will enable several workstations to access real time telemetry data received...
2
isladogs
by: isladogs | last post by:
The next Access Europe meeting will be on Wednesday 2 August 2023 starting at 18:00 UK time (6PM UTC+1) and finishing at about 19:15 (7.15PM) The start time is equivalent to 19:00 (7PM) in Central...
0
by: erikbower65 | last post by:
Here's a concise step-by-step guide for manually installing IntelliJ IDEA: 1. Download: Visit the official JetBrains website and download the IntelliJ IDEA Community or Ultimate edition based on...
0
by: Taofi | last post by:
I try to insert a new record but the error message says the number of query names and destination fields are not the same This are my field names ID, Budgeted, Actual, Status and Differences ...
14
DJRhino1175
by: DJRhino1175 | last post by:
When I run this code I get an error, its Run-time error# 424 Object required...This is my first attempt at doing something like this. I test the entire code and it worked until I added this - If...
0
by: Rina0 | last post by:
I am looking for a Python code to find the longest common subsequence of two strings. I found this blog post that describes the length of longest common subsequence problem and provides a solution in...
5
by: DJRhino | last post by:
Private Sub CboDrawingID_BeforeUpdate(Cancel As Integer) If = 310029923 Or 310030138 Or 310030152 Or 310030346 Or 310030348 Or _ 310030356 Or 310030359 Or 310030362 Or...
0
by: lllomh | last post by:
Define the method first this.state = { buttonBackgroundColor: 'green', isBlinking: false, // A new status is added to identify whether the button is blinking or not } autoStart=()=>{
0
by: lllomh | last post by:
How does React native implement an English player?
2
by: DJRhino | last post by:
Was curious if anyone else was having this same issue or not.... I was just Up/Down graded to windows 11 and now my access combo boxes are not acting right. With win 10 I could start typing...

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.