web.config中进入连接到SQL Server [英] Web.config entry to connect to SQL Server
问题描述
嗯,我试图改变我的应用程序从Oracle到SQL Server的连接。我有这个在web.config中。
<编译调试=真正的>
<&集会GT;
...
<添加组件=System.Data.OracleClient的,版本= 2.0.0.0,文化=中性公钥= B77A5C561934E089/>
...
< /组件>
< /编译>
和
<&的appSettings GT;
<添加键=DatabaseProviderVALUE =Test.App.Oracle8i/>
<添加键=SmtpUserVALUE =mail@example.com/>
<添加键=SmtpPasswordVALUE =testpassword/>
<添加键=SmtpDefaultSenderVALUE =mail@example.com/>
<添加键=SmtpHostVALUE =mail.example.com/>
<添加键=SMTPPORTVALUE =25/>
<添加键=EnableSslVALUE =FALSE/>
< /的appSettings>
这
<&是connectionStrings GT;
<添加名称=CnString的connectionString =数据Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=loCALHOST)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=XE)));User ID = TESTUSER;密码= TESTPASSWORD;/>
< /&是connectionStrings GT;
当我更改这些应用中,这些值将不会运行,标记错误。
<编译调试=真正的>
<&集会GT;
...
<添加组件=System.Data.SqlClient的,版本= 10.50.1600,文化=中性公钥= B77A5C561934E089/>
...
< /组件>
< /编译>
和
<&的appSettings GT;
<添加键=DatabaseProviderVALUE =Test.App.SqlServer/>
<添加键=SmtpUserVALUE =mail@example.com/>
<添加键=SmtpPasswordVALUE =testpassword/>
<添加键=SmtpDefaultSenderVALUE =mail@example.com/>
<添加键=SmtpHostVALUE =mail.example.com/>
<添加键=SMTPPORTVALUE =25/>
<添加键=EnableSslVALUE =FALSE/>
< /的appSettings>
和最后一个
<&是connectionStrings GT;
<添加名称=CnString的connectionString =数据Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=MSSQLSERVER)));Initial目录= TESTDATABASE;用户ID = TESTUSER;密码= TESTPASSWORD;/>
< /&是connectionStrings GT;
或
<&是connectionStrings GT;
<添加名称=CnString的providerName =System.Data.SqlClient的的connectionString =数据源=(本地)\\\\ MSSQLSERVER;初始目录= TESTDATABASE;用户ID = TESTUSER;密码= TESTPASSWORD;/>
< /&是connectionStrings GT;
我不明白的是应该让行。
<添加组件=System.Data.OracleClient的,版本= 2.0.0.0,文化=中性公钥= B77A5C561934E089/>
<添加键=DatabaseProviderVALUE =Test.App.Oracle8i/>
<添加名称=CnString的connectionString =数据Source=**(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=loCALHOST)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=XE)))**;User ID = TESTUSER;密码= TESTPASSWORD;/>
您需要连接到SQL Server的只有2行是:
<&是connectionStrings GT;
<添加名称=CnString的providerName =System.Data.SqlClient的的connectionString =数据源=(本地)\\\\ MSSQLSERVER;初始目录= TESTDATABASE;用户ID = TESTUSER;密码= TESTPASSWORD;/>
< /&是connectionStrings GT;
和
<&集会GT;
<添加组件=System.Data这,版本= 4.0.0.0,文化=中性公钥= b77a5c561934e089/>
< /组件>
(变化版和公钥在.NET 2.0的情况下/ 3.X)
然后使用:
SqlConnection的连接=新的SqlConnection(CnString);
// ...
这就是它。
在.NET中有没有这样的装配为 System.Data.SqlClient的,版本= 10.50.1600,...
。的SqlClient是非标准的.NET Framework分布的一部分。
例如, System.Data.SqlClient.SqlConnection :
命名空间:System.Data.SqlClient的
大会:System.Data这(在System.Data.dll中)
Well I'm trying to change the connection of my application from Oracle to SQL Server. I have this in web.config.
<compilation debug="true">
<assemblies>
...
<add assembly="System.Data.OracleClient, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
...
</assemblies>
</compilation>
and
<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>
and this
<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>
When I change these values for these application will not run and mark errors.
<compilation debug="true">
<assemblies>
...
<add assembly="System.Data.SqlClient, Version=10.50.1600, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
...
</assemblies>
</compilation>
and
<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>
and the last
<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>
or
<connectionStrings>
<add name="CnString" providerName="System.Data.SqlClient" connectionString="Data Source=(local)\\MSSQLSERVER;Initial Catalog=TESTDATABASE;User Id=TESTUSER;Password=TESTPASSWORD;"/>
</connectionStrings>
I do not understand is supposed to make the lines.
<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;"/>
The only 2 lines you need to connect to SQL Server is:
<connectionStrings>
<add name="CnString" providerName="System.Data.SqlClient" connectionString="Data Source=(local)\\MSSQLSERVER;Initial Catalog=TESTDATABASE;User Id=TESTUSER;Password=TESTPASSWORD;"/>
</connectionStrings>
and
<assemblies>
<add assembly="System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
</assemblies>
(change version and publicKeyToken in case of .NET 2.0/3.x)
Then use:
SqlConnection connection = new SqlConnection("CnString");
// ...
That's it.
In .NET there is no such assembly as System.Data.SqlClient, Version=10.50.1600, ...
. SqlClient is the part of standart .NET Framework distribution.
For example, System.Data.SqlClient.SqlConnection:
Namespace: System.Data.SqlClient
Assembly: System.Data (in System.Data.dll)
这篇关于web.config中进入连接到SQL Server的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!