2016-11-27 21 views
0

Я только что выпустил программу с C# и Visual Studio, у которой есть форма входа. Эта форма входа имеет базу данных и таблицу, и вы должны иметь имя пользователя и пароль для подключения к этой программе. Когда вы вводите имя пользователя и пароль, программа будет подключаться к SQL Server (который находится в моей системе), и если имя пользователя и пароль верны, вы можете войти в программу. Но когда я установил эту программу в другую Систему, я даже не могу войти в программу, и ошибка: Убедитесь, что имя экземпляра правильно и что SQl-сервер настроен. Tp разрешает удаленные подключения. И код ошибки равен 40. Я установил порт программы на 1433 и изменил TCP/IP для включения и перезапуска сервера SQl. И уже я добавил этот порт для входящих правил в брандмауэре Windows Windows. И в опции сервера Sql я проверил: разрешить другим системам подключаться. Но я cannont Подключитесь к моей Системе, с другими системами. В чем моя проблема? Вот мой код SQL-сервера и код подключений на 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

Я не реально получить, где you're собирается с этим ... нет смысла иметь локальную базу данных для входа в систему. Тем не менее, я попытаюсь ответить на ваш вопрос. Вы не можете установить строку подключения в своей программе, потому что разные ПК имеют разные имена экземпляров (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> 

И that's как получить строку соединения:

var connectionString = System.Configuration.ConfigurationManager.ConnectionStrings["data"].ConnectionString; 

Вы также должны добавить ссылку на System.Configuration