SQL providerName в web.config

Мы используем ASP.NET(Framework 2) и устанавливаем строки подключения базы данных (SQL2005) в web.config.

В настоящее время мы используем "providerName=SqlServer".

Все наши обращения к данным выполняются с помощью System.Data.SqlClient - следует ли нам изменить на providerName=System.Data.SqlClient? Я нахожу много примеров этого имени поставщика в Интернете, но очень мало объясняю, что на самом деле означает providerName = SqlServer.

Есть ли разница? Я беспокоюсь, что имя поставщика, которое мы в настоящее время указываем, фактически ссылается на прежний (и, возможно, более медленный) клиент, или есть еще более эффективный клиент, чем SqlClient для использования с ASP.NET?

Ответ 1

System.Data.SqlClient - поставщик данных .NET Framework для SQL Server. т.е..NET-библиотека для SQL Server.

Я не знаю, откуда приходит providerName=SqlServer. Не могли бы вы разобраться с ключевыми словами поставщика в строке подключения? (Я знаю, что был:))

В web.config вы должны иметь System.Data.SqlClient как значение атрибута providerName. Это поставщик данных .NET Framework, который вы используете.

<connectionStrings>
   <add 
      name="LocalSqlServer" 
      connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|aspnetdb.mdf;User Instance=true" 
      providerName="System.Data.SqlClient"
   />
</connectionStrings>

См http://msdn.microsoft.com/en-US/library/htw9h4z3(v=VS.80).aspx

Ответ 2

 WebConfigurationManager.ConnectionStrings["YourConnectionString"].ProviderName;