Подтвердить что ты не робот

Как использовать ConfigurationManager.AppSettings

Я никогда раньше не использовал "appSettings". Как настроить это в С# для использования с SqlConnection, это то, что я использую для "ConnectionStrings"

        SqlConnection con = new SqlConnection();
        con.ConnectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;

И это то, что у меня есть для "appSettings"

        SqlConnection con = new SqlConnection();
        con = ConfigurationManager.AppSettings("ConnectionString");

но он не работает.

4b9b3361

Ответ 1

ConfigurationManager.AppSettings на самом деле является свойством, поэтому вам нужно использовать квадратные скобки.

В целом, вот что вам нужно сделать:

    SqlConnection con = new SqlConnection(ConfigurationManager.AppSettings["ConnectionString"]);

Проблема заключается в том, что вы пытались установить con для строки, что неверно. Вы должны либо передать его конструктору, либо установить свойство con.ConnectionString.

Ответ 2

Ваш файл web.config должен иметь следующую структуру:

<configuration>
    <connectionStrings>
        <add name="MyConnectionString" connectionString="..." />
    </connectionStrings>
</configuration>

Затем, чтобы создать SQL-соединение, используя строку подключения с именем MyConnectionString:

SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["MyConnectionString"].ConnectionString);

Если вы предпочитаете сохранять свои строки подключения в разделе AppSettings вашего файла конфигурации, это будет выглядеть так:

<configuration>
    <appSettings>
        <add key="MyConnectionString" value="..." />
    </appSettings>
</configuration>

И тогда ваш конструктор SqlConnection будет выглядеть следующим образом:

SqlConnection con = new SqlConnection(ConfigurationManager.AppSettings["MyConnectionString"]);

Ответ 3

\ если то, что вы разместили, именно то, что вы используете, тогда ваша проблема немного очевидна. Теперь предположим, что в вашем web.config у вас есть строка соединения, определенная как

 <add name="SiteSqlServer" connectionString="Data Source=(local);Initial Catalog=some_db;User ID=sa;Password=uvx8Pytec" providerName="System.Data.SqlClient" />

В вашем коде вы должны использовать значение в атрибуте name, чтобы ссылаться на нужную строку соединения (вы могли бы фактически определить несколько строк подключения для разных баз данных), поэтому у вас будет

 con.ConnectionString = ConfigurationManager.ConnectionStrings["SiteSqlServer"].ConnectionString;

Ответ 4

вы должны использовать []

var x = ConfigurationManager.AppSettings["APIKey"];