Ошибка при создании пользовательского экземпляра ошибки SQL Server при запуске приложения установки на другом компьютере

#c# #.net #sql-server #ado.net #setup-project

#c# #.net #sql-сервер #ado.net #установка-проект

Вопрос:

Я не могу запустить свое приложение c # на другом компьютере, отличном от моего собственного компьютера. В моем проекте есть прикрепленный файл базы данных mdf. У меня есть ‘SQL SERVER 2008’ в качестве предварительного условия в проекте установки. Приложение устанавливается и работает нормально на моем компьютере, но когда я устанавливаю и запускаю его на другом компьютере, оно показывает следующую ошибку:

 Description:
Stopped working

Problem signature:
Problem Event Name: CLR20r3
Problem Signature 01:   esbi.exe
Problem Signature 02:   1.0.0.0
Problem Signature 03:   4dd8feca
Problem Signature 04:   System.Data
Problem Signature 05:   2.0.0.0
Problem Signature 06:   4a274a01
Problem Signature 07:   2744
Problem Signature 08:   11
Problem Signature 09:   System.Data.SqlClient.Sql
OS Version: 6.1.7600.2.0.0.256.1
Locale ID:  1033
  

Итак, я установил блок try-catch при первом открытии соединения с базой данных и обнаружил следующую ошибку:

System.Data.SqlClient.SQLException: Не удалось сгенерировать пользовательский интерфейс SQL Server из-за сбоя при запуске процесса для пользовательского экземпляра. Соединение будет закрыто.

Строка подключения, которую я использую для подключения к базе данных, является

 Data Source=.SQLEXPRESS;AttachDbFilename=|DataDirectory|esbi.mdf;Integrated Security=True;User Instance=True
  

что я делаю не так?? Что-то со строкой подключения??
есть предложения?

Ответ №1:

Это может быть «. SQLEXPRESS» в строке подключения. При развертывании на моем сервере, на котором выполняется полная версия SQL, я должен изменить это на «(локальный)».

Комментарии:

1. Есть успехи с этим предложением?

2. Он решил проблему с помощью вашего предложения. смотрите его ответ на social.msdn.microsoft.com/Forums/eu/winformssetup/thread /…

Ответ №2:

У меня было приложение wpf, которое запускалось на моей машине разработки, но выдавало System.Data.SqlClient.Ошибка Sql при развертывании на сервере. В моем проекте я изменил «Целевой профиль:» на вкладке «Приложение» с «.NET Framework 4 Client_profile» на «.NET Framework 4», а затем закрыл, открыл и повторно подключил его. Затем приложение запустилось без ошибки, поскольку сервер установил соответствие.NET framework