我刚刚发布了一个带有C#和Visual Studio的程序,它有一个登录表单。 此登录表单包含数据库和表,您应该具有用户名和密码才能连接到此程序。当您输入用户名和密码时,程序将连接到SQL Server(在我的系统中),如果用户名和密码正确,您可以输入该程序。 但是当我在另一个系统中安装此程序时,我甚至无法输入程序,错误是:验证实例名称是否正确并且配置了SQl服务器tp允许远程连接。 错误代码是40。 我已将程序的端口设置为1433并更改了TCP / IP以启用并重新启动SQl服务器。 我已将此端口添加到Windows Windows防火墙中的入站规则中。 在Sql server的选项中,我检查过:允许其他系统连接。 但我不能连接到我的系统,与另一个系统。 我的问题是什么? 这是我在C#中的SQL服务器和连接代码的代码。
int x = tblLoginTableAdapter1.LoginSystem(txtUserName.Text, txtPassWord.Text).Value;
和连接字符串:
class Connection
{
public static string C = "Data Source=VORTEX;Initial Catalog=Warehouse;Integrated Security=True";
}
答案 0 :(得分:0)
我真的不知道你要去哪里......有一个本地数据库登录是没有意义的。 不过我会尝试回答你的问题。 您无法在程序中设置连接字符串,因为不同的PC具有不同的实例名称(duh)。
class Connection
{
public static string C = "Data Source=VORTEX (<=This is your error);Initial Catalog=Warehouse;Integrated Security=True";
}
使用app.config代替存储连接字符串。
所以你的app.config看起来像这样:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
<connectionStrings>
<add key="data" connectionString="Data Source=VORTEX;Initial Catalog=Warehouse;Integrated Security=True"/>
</connectionStrings>
</configuration>
这就是你如何得到连接字符串:
var connectionString = System.Configuration.ConfigurationManager.ConnectionStrings["data"].ConnectionString;
您还必须添加对System.Configuration