I'm using ADO.Internet for many database connectivity and that i only agreed to be wishing I had been doing the work the proper way. I'm frequent lowering and raising multiple connections for every saved procedure. Or must i be wrapping this up in only one open connection (less resource around the database maybe?) thanks, and when there's anything odd or something like that I possibly could do better tell me thanks!

Example: this however i have like 6 of these...

using (SqlConnection conn = new SqlConnection(ConnectionString))
        {
            SqlCommand cmd = new SqlCommand("spSelectAllTrip", conn);
            cmd.CommandType = CommandType.StoredProcedure;
            conn.Open();
            ddlTripTypeA.DataSource = cmd.ExecuteReader();
            ddlTripTypeA.DataTextField = "TripType";
            ddlTripTypeA.DataValueField = "TripTypeAID";
            ddlTripTypeA.DataBind();
        }
        using (SqlConnection conn = new SqlConnection(ConnectionString))
        {
            SqlCommand cmd = new SqlCommand("spSelectAllTripB", conn);
            cmd.CommandType = CommandType.StoredProcedure;
            conn.Open();
            ddlTripTypeB.DataSource = cmd.ExecuteReader();
            ddlTripTypeB.DataTextField = "TripType";
            ddlTripTypeB.DataValueField = "TripTypeBID";
            ddlTripTypeB.DataBind();
        }

.Internet has connection pooling already handled for you personally so you don't have to be worried about re-using connections like you may have with old asp. I usually opt for several small quick calls versus keeping one open the entire time because not constantly it's open is usually employed for calls. You've your website code running doing a bit of things between too.

Now if you are planning to create 6 consecutive calls one to another it will make sense to spread out one and reuse. But apart from that I only say just stick to your work.

The only real factor you might like to consider is really a connection manager to ensure that you are not needing to produce the connection object insinternet again and again again. But that does not have anything related to db connections versus just object creation.

You need to keep connections open as short a period as you possibly can. Thus, you need to open an association, perform query or saved procedure after which close the bond. Even though this sounds costly, it harnesses ADO.NET's built-in connection pooling. Whenever you close an association, it's came back to some pool and used again so you don't suffer a performance hit.

ADO.Internet uses connection pooling, to ensure that should lower the price of opening new connections staying away from any must have one connection open throughout all of your application.

However, there's most likely still some overhead to shuffling the connections within the pool, if you have code that's run sequentially and immediately, inside the same part of your code, then you're most likely best utilizing a single connection for your short span. Check Adam's answer for a little more about that - you need to get anything else setup first to ensure that the bond is open as short a period as you possibly can.

If any ADO.Internet developers will tell you or correct this, please.

An easy method to get this done is always to prep each of the instructions after which open the bond and execute both of them in quick succession:

conn.Open();
comm1.ExecuteReader();
comm2.ExecuteReader();

Keep them open as short a period as you possibly can.