Настройка строки подключения в ASP.NET в SQL SERVER



Я пытаюсь создать строку подключения в web.файл конфигурации (Visual Studio 2008 / ASP. NET 3.5) для локального сервера (SQL server 2008).

в моем web.конфигурации, как и где я могу разместить строку подключения?

вот что веб.конфигурационный файл выглядит так прямо сейчас:http://imwired.net/aspnet/Online_web.config

любая помощь будет высоко оценили.

спасибо, Джон

786   15  

15 ответов:

вы также можете использовать это, это проще. Единственное, что вам нужно установить, это "YourDataBaseName".

  <connectionStrings>
    <add name="ConnStringDb1" connectionString="Data Source=localhost;Initial Catalog=YourDataBaseName;Integrated Security=True;" providerName="System.Data.SqlClient" />
  </connectionStrings>

где вместо строку подключения

<?xml version='1.0' encoding='utf-8'?>  
  <configuration>  
    <connectionStrings>  
      <clear />  
      <add name="Name"   
       providerName="System.Data.ProviderName"   
       connectionString="Valid Connection String;" />  
    </connectionStrings>  
  </configuration>  

по какой-то причине я не вижу здесь простого ответа.

поместите это в верхней части кода:

using System.Web.Configuration;
using System.Data.SqlClient; 

положите это в Сеть.Config:

<connectionStrings >
    <add
         name="myConnectionString" 
         connectionString="Server=myServerAddress;Database=myDataBase;User ID=myUsername;Password=myPassword;Trusted_Connection=False;"
         providerName="System.Data.SqlClient"/>
</connectionStrings>

и где вы хотите настроить переменную подключения:

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

Я нашел это очень трудно получить ответ, но в конце концов понял это. Поэтому я напишу шаги ниже.

  1. Перед настройкой строки подключения в коде убедитесь, что вы действительно можете получить доступ к базе данных. Начните, очевидно, с входа на сервер баз данных с помощью SSMS (среда Sql Server Management Studio или ее эквивалент в других базах данных) локально, чтобы убедиться, что у вас есть доступ, используя любые сведения, которые вы собираетесь использовать.

  2. далее (при необходимости), если вы пытаетесь получить доступ к базе данных на отдельном сервере, убедитесь, что вы можете сделать то же самое в SSMS. Поэтому установите SSMS на компьютере и убедитесь, что вы можете получить доступ к серверу с именем пользователя и паролем к этому серверу базы данных.

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

после того, как вы проверили, что вы можете получить доступ к базе данных с помощью SSMS. Следующий шаг, просто ради автоматизации процесса и избежания ошибок, заключается в том, чтобы позволить системе выполнять работу за вас.

  1. запустите пустой проект, добавьте свой выбор Linq в SQL или Dataset (EF хорош, но строка подключения встроена в строку EF con, я хочу чистый) и подключитесь к ваша база данных использует детали, проверенные выше в строке con wizzard. Добавьте любую таблицу и сохраните файл.

Теперь перейдите в веб-конфигурацию, и волшебным образом вы увидите там красивую чистую рабочую строку подключения со всеми необходимыми вам деталями.


{ ниже была часть старого сообщения, поэтому вы можете игнорировать это, я оставляю его для справки как самый простой способ доступа к базе данных только из кода. Прокрутите вниз и перейдите к Шагу 2 ниже. }

предположим, что указанные выше действия начать с что-то вроде следующего в качестве строки подключения в коде:

string conString = "Data Source=localhost;Initial Catalog=YourDataBaseName;Integrated Security=True;";

этот шаг очень важен. Убедитесь, что у вас есть выше формат строки подключения работает, прежде чем предпринимать следующие шаги. Убедитесь, что вы действительно можете получить доступ к своим данным, используя некоторую форму текста команды sql, которая отображает некоторые данные из таблицы в метках или текстовых бозах или что-то еще, так как это самый простой способ сделать соединение строка.

как только вы уверены, что выше стиль работает его сейчас время, чтобы сделать следующие шаги:

1. Экспортируйте свой строковый литерал (материал в кавычках,в том числе кавычки) в следующий раздел интернета.конфигурационный файл (для нескольких строк подключения, просто сделать несколько строк:

<configuration>
    <connectionStrings>
        <add name="conString" connectionString="Data Source=localhost;Initial Catalog=YourDataBaseName;Integrated Security=True;" providerName="System.Data.SqlClient" />
        <add name="conString2" connectionString="Data Source=localhost;Initial Catalog=YourDataBaseName;Integrated Security=True;" providerName="System.Data.SqlClient" />
        <add name="conString3" connectionString="Data Source=localhost;Initial Catalog=YourDataBaseName;Integrated Security=True;" providerName="System.Data.SqlClient" />
    </connectionStrings>
</configuration>

{ выше было частью старого сообщения, после выполнения первых 3 шагов весь этот процесс будет выполнен для вас, поэтому вы можете игнорировать его. Я просто оставляю его здесь для моей собственной справки. }


2. Теперь добавьте следующую строку кода в код C# позади, предварительно только под определением класса (т. е. не внутри метода). Это указывает на корневую папку вашего проекта. По сути, это название проекта. Это, как правило, расположение в интернете.конфигурационный файл (в этом случае мой проект называется MyProject.

static Configuration rootWebConfig = WebConfigurationManager.OpenWebConfiguration("/MyProject");

3. Теперь добавьте следующую строку кода в код C# позади. Это задает строковую константу, к которой вы может ссылаться во многих местах по всему коду, если вам нужно conString в различных методах.

const string CONSTRINGNAME = "conString";

4. Затем добавьте следующую строку кода в код C# позади. Это возвращает строку подключения из интернета.конфигурационный файл с именем conString (от константы выше)

ConnectionStringSettings conString = rootWebConfig.ConnectionStrings.ConnectionStrings[CONSTRINGNAME];

5. Наконец, где вы изначально имели бы что-то похожее на эту строку кода:

SqlConnection con = new SqlConnection(conString)

вы замените эту строку код:

SqlConnection con = new SqlConnection(conString.ConnectionString)

после выполнения этих 5 шагов, ваш код должен работать, как и прежде. Hense причина, по которой вы сначала тестируете constring в его исходном формате, чтобы вы знали, является ли это проблемой со строкой подключения или если это проблема с кодом.

Я новичок в C#, ASP.Net и Sql Server. Поэтому я уверен, что должен быть лучший способ сделать этот код. Я также хотел бы получить обратную связь о том, как улучшить эти шаги, если это возможно. Я искал повсюду что-то вроде это, но я в конечном итоге понял это после многих недель тяжелой работы. Глядя на это сам, я все еще думаю, что должен быть более простой способ.

Я надеюсь, что это полезно.

он должен быть в пределах <configuration> узел:

  <connectionStrings >
    <add name="myconnectionstring" connectionString="Server=myServerAddress;Database=myDataBase;User ID=myUsername;Password=myPassword;Trusted_Connection=False;" providerName="System.Data.SqlClient"/>
  </connectionStrings>

этой сайт имеет больше информации о нем:

в заголовке

using System.Configuration;

код

SqlConnection conn = new SqlConnection(*ConfigurationManager.ConnectionStrings["connstrname"].ConnectionString*);

подключение в WebConfig

<connectionStrings>
<add name="ConnectionString" connectionString="Data Source=192.168.1.25;Initial Catalog=Login;Persist Security Info=True;User ID=sa;Password=example.com"   providerName="System.Data.SqlClient" />
</connectionStrings>

В Класс.Cs

public static string ConnectionString{
get{
return ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;}
set{}

вы также можете использовать внешний файл конфигурации для указания раздела строки подключения и ссылаться на этот файл в файле конфигурации приложения, как в web.config

как и в web.config file:

<configuration>  
    <connectionStrings configSource="connections.config"/>  
</configuration>  

внешняя конфигурация connections.config файл будет содержать раздел соединения

<connectionStrings>  
  <add name="Name"   
   providerName="System.Data.ProviderName"   
   connectionString="Valid Connection String;" />  

</connectionStrings>  

изменение содержимого внешнего файла конфигурации не приведет к перезапуску приложения (как ASP.net делает по умолчанию с любыми изменениями в приложении конфигурационные файлы)

Если вы хотите написать строку подключения в web.config затем напишите под данным sting

<connectionStrings>
  <add name="Conn" connectionString="Data Source=192.168.1.25;Initial Catalog=Login;Persist Security Info=True;User ID=sa;Password=example.com"
   providerName="System.Data.SqlClient" />
 </connectionStrings>

или

вы прямо в aspx-файл.cs файл типа

SqlConnection conn = new SqlConnection("Data Source=12.16.1.25;Initial Catalog=Login;Persist Security Info=True;User ID=sa;Password=example.com");

вы можете положить это в свой web.config file connectionStrings:

<add name="myConnectionString" connectionString="Server=myServerAddress;Database=myDataBase;User ID=myUsername;Password=myPassword;Trusted_Connection=False;" providerName="System.Data.SqlClient"/>

Вы можете использовать следующий формат:

  <connectionStrings>
    <add name="ConStringBDName" connectionString="Data Source=serverpath;Initial Catalog=YourDataBaseName;Integrated Security=SSPI;" providerName="System.Data.SqlClient" />
  </connectionStrings>

скорее всего, вы будете Fing connectionstring тег в интернете.конфигурация после <appSettings>

попробуйте это.

вы можете попробовать это. Это очень просто

<connectionStrings>         
    <add name="conString" connectionString="Data Source=SQLServerAddress;Initial Catalog=YourDatabaseName; User Id=SQLServerLoginId; Password=SQLServerPassword"/>
</connectionStrings>

попробуйте это для строки подключения.

 Data Source=myServerAddress;Initial Catalog=myDataBase;Integrated Security=SSPI;
 User ID=myDomain\myUsername;Password=myPassword;

Я ТОЛЬКО ЧТО НАШЕЛ!! Вам нужно поставить эту строку подключение и укажите прямо на ваш база данных. Тот же случай на сервере.

"Provider=Microsoft.ACE.OLEDB.12.0; 
 Data Source=c:/inetpub/wwwroot/TEST/data/data.mdb;"

это работает!! :)

хранить строку подключения в web.конфигурации

рекомендуется хранить строку подключения для вашего приложения в файле конфигурации, а не в виде жестко закодированной строки в коде. Способ сделать это отличается между .NET 2.0 и .NET 3.5 (и выше). Эта статья охватывает оба. https://www.connectionstrings.com/store-connection-string-in-webconfig/

создать раздел под названием <connectionStrings></connectionStrings> в своем web.config и добавить различные строки подключения к нему, например

 <connectionStrings>
  <add name="ConnectionStringName" providerName="System.Data.SqlClient" connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=DatabaseName;Integrated Security=True;MultipleActiveResultSets=True"/>
 </connectionStrings>

вот список всех различных форматов строки подключения https://msdn.microsoft.com/en-us/library/jj653752 (v=vs. 110). aspx

    Ничего не найдено.

Добавить ответ:
Отменить.