C# 我必须在连接字符串中查看的主要问题是什么?

C# 我必须在连接字符串中查看的主要问题是什么?,c#,asp.net,sql-server-2008,ado.net,connection,C#,Asp.net,Sql Server 2008,Ado.net,Connection,为了在其他连接中本地运行我的应用程序,我必须更改此连接字符串中的哪些内容 计算机?? 这是我的连接字符串 <add name="DefaultConnection" providerName="System.Data.SqlClient" connectionString=" Data Source=.\SQLEXPRESS; Database=|DataDirectory|\MydataDB; Initial Catalog=MydataDB; Integrated Security=

为了在其他连接中本地运行我的应用程序,我必须更改此连接字符串中的哪些内容 计算机?? 这是我的连接字符串

<add name="DefaultConnection" providerName="System.Data.SqlClient" 
connectionString="
Data Source=.\SQLEXPRESS;
Database=|DataDirectory|\MydataDB;
Initial Catalog=MydataDB;
Integrated Security=SSPI;
MultipleActiveResultSets=True" 
/>


答案完全取决于您要部署到的环境。您可能需要更改数据源、数据库、初始目录或集成安全值。根据要部署到的服务器的安全选项,您可能还需要添加其他值,例如,如果您在要部署到的服务器上使用SQL安全性。如果您有关于要部署到的服务器的特定信息,则可以提供更详细的答案。

首先,您需要将数据库正确地附加到SQL server Express实例,而不是使用此
| DataDirectory |
冗杂。然后,您需要确保SQL Server Express设置为允许远程连接,SQL Server Browser服务正在运行,TCP/IP已启用,并且防火墙上的端口未被阻止(确保您可以从另一台计算机远程登录到端口1434)。然后需要将
\SQLEXPRESS
更改为
IP或server name\SQLEXPRESS

connectionString = "Data Source=source machine name or IP\SQLEXPRESS;
Initial Catalog=MydataDB;
Integrated Security=SSPI;
MultipleActiveResultSets=True" 

另外,您是否有意使用
MultipleActiveResultSets

使用集成安全性意味着,如果您远程运行它,运行它的用户帐户也必须存在于您的本地计算机上。我建议在SQL中创建一个用户/密码,并将其添加到连接字符串中

您还必须启用允许远程连接到数据库服务器所需的SQL服务和端口。您还需要将其从。\SQLExpress更改为您的服务器名(或IP地址)\SQLExpress