difference between writing connection string in web.config
through connection string and appsettings

Answer Posted / ramesh p

Introduction

In many cases, we need to use some data string throughout
the application, database connection string is the best
example of it. Instead of writing the connection string
wherever we are creating a connection, its good practice
(and easy to maintain too) to store it into web.config file
and get it at desired place.

Places to store data into Web.Config file

There are two places where we can store data into our
web.config file. These are appSettings and
connectionStrings. Following is the code snippet from the
web.config file where we can store data and retrieve at
later point of time.

<configuration>

<appSettings>

<add key="ConnStr" value="Data
Source=.\SQLEXPRESS;AttachDbFilename=C:\MyData\App_Data\Database.mdf;Integrated
Security=True;User Instance=True"/>

</appSettings>

<connectionStrings>

<add name="ConnStr" connectionString="Data
Source=.\SQLEXPRESS;AttachDbFilename=C:\MyData\App_Data\Database.mdf;Integrated
Security=True;User Instance=True"/>

</connectionStrings>

</configuration>



Here appSettings is meant for any data string that can be
stored while connectionString is meant for storing the
database connection strings only.


How to Get data from Web.Config

Getting data from web.config file is simple. If you want to
get data from appSettings tag then you need to write
following code

string connStr =
System.Configuration.ConfigurationManager.AppSettings["ConnStr"].ToString();

To get data from web.config file stored under
connectionStrings tag, you need to write following code

string connStr =
System.Configuration.ConfigurationManager.ConnectionStrings["ConnStr"].ToString();


Getting connectionStrings value into .aspx page

If for some reason you want to access the string stored in
connectionStrings tag into .aspx page (You may need this
while using SqlDataSource control), you need to write
following code (Notice the code in the pink color <%$
ConnectionStrings:ConnStr %>).

<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString='<%$ ConnectionStrings:ConnStr %>'

SelectCommand="Select * FROM SampleForTutorials ORDER BY
[Name]" DataSourceMode="DataSet">

</asp:SqlDataSource>


Conclusion

Web.Config file is the best place to store small and simple
string that can be used throught the application. Using
System.Configuration.ConfigurationManager class that exists
in System.Configuration namespace, we can retrive them
wherever we need.

Is This Answer Correct ?    27 Yes 3 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

Why will you usually create an aspnet user account in the database for an asp.net web application?

541


In order to bind the data from a data source to the Repeater control what property is set and what method must you call in your code,?

597


What is the difference between dynamic SGA and static SGA?

590


What would be salary for 8+ years of experience in ASP.NET in different metro city in india?

1993


What is the main difference between Asp.net and Vb.net?

573






What are the advantages of passport authentication?

515


Why is mvc better than asp.net?

537


What is the state management in asp.net?

556


What is asp net application object?

546


Is asp.net 64-bit enabled? How?

595


Explain about asp.net 2.0 themes?

562


List the events in page life cycle.

556


Are there resources online with tips on asp to asp.net conversions?

552


Explain managed code an un-managed code.

601


What are Master Pages in ASP.NET?

580