Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

C# Configuration Manager . ConnectionStrings

Tags:

c#

I have a console app containing an application configuration file containing one connection string as shown below:

<configuration>
  <connectionStrings>
    <add name="Target" 
      connectionString="server=MYSERVER; Database=MYDB; Integrated Security=SSPI;" />
  </connectionStrings>
</configuration>

When I pass this to my Connection using:

ConfigurationManager.ConnectionStrings[1].ToString()

I have two values in there, hence using the second in the collection, my question is where is this second coming from?

I have checked the \Bin version and original and its not mine! Its obviously a system generated one but I have not seen this before? Can anyone enlighten me?

The mystery connection string is:

data source=.\SQLEXPRESS;
          Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;
          User Instance=true

This isn't a problem as such I would just like to know why this is occuring? Thanks in advance!

For future reference to those who may or may not stumble on this, after discovering the machine.config, it's become apparent it is bad practice to refer to a config by its index as each stack will potentially be different, which is why "Keys" are used.

In this instance my code would be:

ConfigurationManager.ConnectionStrings["Target"].ToString()

Cheers all!

like image 712
Matt Avatar asked May 13 '10 15:05

Matt


People also ask

What C is used for?

C programming language is a machine-independent programming language that is mainly used to create many types of applications and operating systems such as Windows, and other complicated programs such as the Oracle database, Git, Python interpreter, and games and is considered a programming foundation in the process of ...

What is the full name of C?

In the real sense it has no meaning or full form. It was developed by Dennis Ritchie and Ken Thompson at AT&T bell Lab. First, they used to call it as B language then later they made some improvement into it and renamed it as C and its superscript as C++ which was invented by Dr.

Is C language easy?

C is a general-purpose language that most programmers learn before moving on to more complex languages. From Unix and Windows to Tic Tac Toe and Photoshop, several of the most commonly used applications today have been built on C. It is easy to learn because: A simple syntax with only 32 keywords.

Is C programming hard?

C is more difficult to learn than JavaScript, but it's a valuable skill to have because most programming languages are actually implemented in C. This is because C is a “machine-level” language. So learning it will teach you how a computer works and will actually make learning new languages in the future easier.


2 Answers

Check your machine.config. If you only want your entry, you can add a <clear /> element to the <connectionStrings> element like so ...

<connectionStrings>
  <clear />
  <add name="Target" 
       connectionString=
             "server=MYSERVER; Database=MYDB; Integrated Security=SSPI;" />
</connectionStrings>
like image 141
Ryan Rinaldi Avatar answered Nov 15 '22 15:11

Ryan Rinaldi


Check your machine.config (under WindowsDir\Framework). I just checked mine and I have the same thing.

like image 44
Adam V Avatar answered Nov 15 '22 15:11

Adam V