Not very sure, why you would like to keep the SQL Connection open. Ideallistically you should NOT keep SQL connection open. That's where all disconnected architecture (dataset) came in to existence.
However, considering you may have some "valid" reason for doing what you are trying to do, you need to set connection pooling in your app.config.
Check
http://msdn.microsoft.com/en-us/library/8xx3tyca.aspx[
^]
Hope that helps
Milind