Запись Web.config для подключения к SQL Server - PullRequest
1 голос
/ 25 апреля 2011

Я пытаюсь изменить соединение моего приложения с Oracle на SQL Server.У меня есть это в web.config.

<compilation debug="true">
    <assemblies>
        ...
        <add assembly="System.Data.OracleClient, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
        ...
    </assemblies>
</compilation>

и

<appSettings>
    <add key="DatabaseProvider" value="Test.App.Oracle8i"/>
    <add key="SmtpUser" value="mail@example.com"/>
    <add key="SmtpPassword" value="testpassword"/>
    <add key="SmtpDefaultSender" value="mail@example.com"/>
    <add key="SmtpHost" value="mail.example.com"/>
    <add key="SmtpPort" value="25"/>
    <add key="EnableSsl" value="False"/>
</appSettings>

, и это

<connectionStrings>
    <add name="CnString" connectionString="Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=loCALHOST)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=XE)));User Id=TESTUSER;Password=TESTPASSWORD;"/>
</connectionStrings>

При изменении этих значений для этих приложений не будетзапустить и пометить ошибки.

<compilation debug="true">
    <assemblies>
        ...
        <add assembly="System.Data.SqlClient, Version=10.50.1600, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
        ...
    </assemblies>
</compilation>

и

<appSettings>
    <add key="DatabaseProvider" value="Test.App.SqlServer"/>
    <add key="SmtpUser" value="mail@example.com"/>
    <add key="SmtpPassword" value="testpassword"/>
    <add key="SmtpDefaultSender" value="mail@example.com"/>
    <add key="SmtpHost" value="mail.example.com"/>
    <add key="SmtpPort" value="25"/>
    <add key="EnableSsl" value="False"/>
</appSettings>

и последние

<connectionStrings>
    <add name="CnString" connectionString="Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=MSSQLSERVER)));Initial Catalog=TESTDATABASE;User Id=TESTUSER;Password=TESTPASSWORD;"/>
</connectionStrings>

или

<connectionStrings>
    <add name="CnString" providerName="System.Data.SqlClient" connectionString="Data Source=(local)\\MSSQLSERVER;Initial Catalog=TESTDATABASE;User Id=TESTUSER;Password=TESTPASSWORD;"/>
</connectionStrings>

Я не понимаюдолжен сделать линии.

<add assembly="System.Data.OracleClient, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add key="DatabaseProvider" value="Test.App.Oracle8i"/>
<add name="CnString" connectionString="Data Source=**(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=loCALHOST)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=XE)))**;User Id=TESTUSER;Password=TESTPASSWORD;"/>

1 Ответ

1 голос
/ 25 апреля 2011

Для подключения к SQL Server необходимо только 2 строки:

<connectionStrings>
    <add name="CnString" providerName="System.Data.SqlClient" connectionString="Data Source=(local)\\MSSQLSERVER;Initial Catalog=TESTDATABASE;User Id=TESTUSER;Password=TESTPASSWORD;"/>
</connectionStrings>

и

<assemblies>
    <add assembly="System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</assemblies>

(изменить версию и publicKeyToken в случае .NET 2.0 / 3.x)

Тогда используйте:

SqlConnection connection = new SqlConnection("CnString");
// ...

Вот и все.


В .NET нет такой сборки, как System.Data.SqlClient, Version=10.50.1600, .... SqlClient является частью стандартного дистрибутива .NET Framework.

Например, System.Data.SqlClient.SqlConnection :

Namespace:  System.Data.SqlClient
Assembly:  System.Data (in System.Data.dll)
...