Nazneen s Ответов: 1

Не удается найти правильную строку подключения


Привет,

у меня есть этот проект C# в visual studio 2015 backend SQL Server 2014.
когда я пытаюсь запустить его на другом компьютере, строка подключения не работает.
"https://www.connectionstrings.com/sql-server-2014/"
полезно, но я не знаю, что я делаю не так.

Что я уже пробовал:

the connection string which works fine on my machine is :

<pre>   string str = @"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\Users\xpert\Documents\RFID_DB.mdf;Integrated Security=True;Connect Timeout=30";


я установил и обновил правильную версию SQL на клиентском ПК.Пожалуйста, помогите мне с правильной строкой подключения.

1 Ответов

Рейтинг:
0

OriginalGriff

Ну нет - не получится!
Во-первых, LocalDB это конкретное имя, которое означает "на этом компьютере" - и если вы не установили SQL Server на обоих компьютерах (что я не рекомендую), строка подключения должна ссылаться на конкретный компьютер, на котором запущен экземпляр SQL server, содержащий базу данных, к которой вам нужно подключиться.
Во - вторых, вы прикрепляете базы данных только для разработки-вы не можете прикрепить БД в производстве, так как "полный" SQL server ее не поддерживает. Вы должны правильно добавить БД в SQL и подключиться к ней, никогда не пытайтесь подключиться, кроме как при разработке программного обеспечения.
В-третьих, Интегрированная безопасность вполне может быть проблемой - если вы специально не разрешили своему домену доступ к" целевому " компьютеру, он не будет работать. И в любом случае это плохая идея, вы должны создавать пользователей только с соответствующими разрешениями: вставить строку, обновить строку, удалить строку. Интегрированная безопасность дает полные разрешения, а это значит, что они могут редактировать или удалять таблицы в вашей БД.

Мы не можем точно сказать вам, что использовать: у нас нет доступа к вашей локальной сети.
Но это две строки, которые я использую для своего локального доступа:

Connection=Data Source=GRIFF-DESKTOP\SQLEXPRESS;Initial Catalog={0};Integrated Security=True

И мой планшет:
Connection=Data Source=GRIFF-DESKTOP\SQLEXPRESS;Initial Catalog={0};Persist Security Info=True;User ID=MyUserName;Password=MyUserPassword
Где {0} заменяется именем БД.


Nazneen s

когда я поместил свою базу данных в общую точку восстановления, она работала нормально, но теперь не могла просматривать отчеты об ошибках, связанных с некоторыми entity framework. так может ли это быть связано с проблемой версии, потому что моя машина имеет Win 10 и клиентская машина win 7?

OriginalGriff

Скорее всего, вам нужно разработать правильные строки соединений и использовать их для разных машин.

Nazneen s

я действительно нашел строку подключения, но теперь она касается entity framework, так что же мне здесь не хватает.

OriginalGriff

:смеяться:
Откуда мне знать? Я даже не могу видеть ваш компьютер, не говоря уже о том, чтобы видеть, что он делает!

Что вы уже выяснили с помощью отладчика?

Nazneen s

Я. Это я говорил сам с собой, я получаю ошибку на клиентской машине, что entity framework = 6.0.0.0 там нет, поэтому я скопировал их с моей машины, теперь ошибка изменилась, так что я собираюсь сделать новый отчет, имея в виду об этом entity framework.Хотя и измученный