У меня есть программа WinForms, которую я создаю для моего друга, который использует базу данных SQL Server Express. Локально я могу нормально подключиться к моему SQL Server Express, и когда я развертываю приложение на своем компьютере, он также работает. Мне трудно подключиться к его экземпляру SQL Server Express с моей машины (я пытаюсь запустить программу в режиме отладки vs2012, но подключен к его базе данных). Программа использует Entity Framework в случае, если это имеет значение (я не думаю, что это так).Строка подключения для SQL Server Express на удаленном компьютере?
Мы установили его брандмауэр, чтобы разрешить моему IP-адресу доступ к его компьютеру и его SQL Server ... поэтому я могу войти в систему через удаленный рабочий стол, и я также могу подключиться с помощью SSMS с моего компьютера и посмотреть все базы данных. ... но почему я не могу подключиться с помощью vs2012? Я думаю, что он имеет какое-то отношение к строке подключения, но пока не нашел рабочего решения.
Вот что я пробовал:
Получил их от ConnectionStrings.com:
Server=100.100.100.100\SQLExpress;Database=TestDB;User Id=UserID;Password=myPassword;
DataSource=100.100.100.100\SQLExpress;Database=TestDB;User Id=UserID;Password=myPassword;
Очевидно, что IP-адрес изменился для целей этого поста.
Любые идеи?
Как вы относитесь к настройке брандмауэра? Вы подключаетесь к своему компьютеру в той же сети или через NAT-устройство (маршрутизатор)? –
О, и что это за строки подключения? EF создает пользовательскую строку для вас при создании сценария tsql, т. Е. В файле app.config проекта –
Он «настраивает» брандмауэр, чтобы я мог подключиться к его компьютеру, как в разных сетях (устройство NAT). Первая строка соединения - это то, что генерирует EF (но я создал его локально, не используя его IP-адрес), поэтому я думал, что могу просто изменить IP-адрес и быть в порядке, но к сожалению, это не так. – Robert