0

我正在开发一个应该在本地网络中运行的sql server express数据库的c#应用程序。我想通过InstallAware为我的项目进行设置。没有服务器名称的连接字符串

我想知道如何为客户端设置连接字符串,而我不知道服务器名称,另一方面我想连接到数据库只知道InstanceName。

ConnectionString = @"Data Source=ServerName\InstanceName;Initial Catalog=Accounting;Persist Security Info=True;User ID=sa;Password=password"; 

回答

0
public static string GetServerName() 
    { 
     // https://msdn.microsoft.com/en-us/library/a6t1z9x2%28v=vs.110%29.aspx?f=255&MSPPError=-2147217396 

     DataTable dt = SqlDataSourceEnumerator.Instance.GetDataSources(); 
     DataRow[] dr = dt.Select("InstanceName='myInstanceName'"); 

     if (dr.Length == 0) 
      return null; 

     return dr[0]["ServerName"].ToString(); 
    } 
相关问题