Solved

DB Server Connection Management with ADO.NET Connected Data Access

Posted on 2013-12-27
11
283 Views
Last Modified: 2014-02-11
I am rewriting a 2006-era ASP.net application.  To maintain high platform migrate-ability, one option that I am looking at is ADO.NET connected data access  as described here:

http://msdn.microsoft.com/en-us/data/ff707264.aspx#_Toc261428884

Given that starting assumption, I am looking for additional information on how to manage server resources and connections in this approach.

Any guidance on this would be appreciated.

Thanks!
0
Comment
Question by:codequest
11 Comments
 
LVL 16

Assisted Solution

by:Surendra Nath
Surendra Nath earned 150 total points
ID: 39743187
A few inputs here...

1) if you re-writing your application, then please consider the below
          a) put all the database retrival stuff into a WCF and let it give the results, instead of actual ADO.NET
          b) Ensure that the access is done through stored procedures or functions but not by direct select statemets.

By doing so, you will website will have an API for further improvement.

And also I would suggest you to take a look at the entity framework, which has more capability than just ADO.NET.

Hope this helps.
0
 
LVL 2

Author Comment

by:codequest
ID: 39752398
Thanks for the input.  Those are worth consideration.  Right now though, I'm looking for something more specifically related to my question, with the assumptions given.
0
 
LVL 96

Expert Comment

by:Bob Learned
ID: 39756079
What version of Visual Studio .NET do you have?
What type of web site are you planning (MVC, Web Forms, OWIN/Katana, ...)?
Do you know about Entity Framework?
0
Optimizing Cloud Backup for Low Bandwidth

With cloud storage prices going down a growing number of SMBs start to use it for backup storage. Unfortunately, business data volume rarely fits the average Internet speed. This article provides an overview of main Internet speed challenges and reveals backup best practices.

 
LVL 25

Accepted Solution

by:
apeter earned 350 total points
ID: 39756684
Hi,the article talks about two options, linq to SQL and entity framework. Which option you have opted for?

To manage resources in both above options, invoke dispose method on datacontext object to release the resources.
0
 
LVL 2

Author Comment

by:codequest
ID: 39756726
Thanks for the inputs.   I'm using VS2013, MVC, and I know about EF.

The option I need to work out is "ADO.NET connected data access", the first option in the article.

The reason I'm going to work through this option first is that I want to maintain the lowest level of abstraction for both performance and migrate-ability.

While I appreciate the tip on the "dispose" method, I need to look at some contextual material on this to understand things like how many connections I'm going to have open, the cost of leaving connections open, the cost of opening and closing connections, etc.

I appreciate that EF resolves many of these questions, however, that's a different path that I won't pursue until I've more completely understood what it takes to manage ADO.NET connected data access.
0
 
LVL 2

Author Comment

by:codequest
ID: 39811181
http://forums.asp.net/t/932515.aspx

Apparently best practice for ASP net SQL connections is to open and close them frequently, and the rule is open late close early.

That's kind of what I was looking for; in essence you don't manage connections you just open them use them and close them.

Unless someone disagrees I'm going to go with that answer thanks.
0
 
LVL 2

Author Comment

by:codequest
ID: 39851406
I've requested that this question be closed as follows:

Accepted answer: 0 points for codequest's comment #a39811181

for the following reason:

most accurate
0
 
LVL 25

Expert Comment

by:apeter
ID: 39850260
I guess that is what I have also stating.

"To manage resources in both above options, invoke dispose method on datacontext object to release the resources."
0
 
LVL 2

Author Comment

by:codequest
ID: 39851408
I'll award points based on apeter's comment.
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Load balancing is the method of dividing the total amount of work performed by one computer between two or more computers. Its aim is to get more work done in the same amount of time, ensuring that all the users get served faster.
The article shows the basic steps of integrating an HTML theme template into an ASP.NET MVC project
The viewer will learn how to dynamically set the form action using jQuery.
The viewer will learn how to create and use a small PHP class to apply a watermark to an image. This video shows the viewer the setup for the PHP watermark as well as important coding language. Continue to Part 2 to learn the core code used in creat…

786 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question