Развертывание проекта с использованием LINQ to SQL - PullRequest
1 голос
/ 08 сентября 2008

Я работаю над приложением winforms, использующим LINQ to SQL, и собираю приложение с использованием экземпляра SQL Express на моей рабочей станции. Окончательная установка проекта будет на правильном SQL Server 2005.

База данных имеет одинаковое имя, и все таблицы идентичны, но имя хоста другое.

Единственный способ заставить мое приложение работать с одного компьютера на другой - это повторно открыть код в Visual Studio, удалить все объекты, относящиеся к экземпляру SQL Express, из моего .mdbl, сохранить проект , подключитесь к другому серверу, перетащите все ссылки обратно и перестройте приложение для выпуска еще раз.

ответ здесь предполагает, что можно просто изменить файл app.config / web.config - который будет работать для asp.net, но это приложение winforms. Как правильно заставить приложения LINQ to SQL использовать новую базу данных без необходимости повторного открытия приложения в visual studio?

Ответы [ 4 ]

1 голос
/ 02 октября 2008

Более полезный ответ ...

app.config заканчивается как appname.exe.config, когда он был собран.

вместо того, чтобы открывать Visual Studio и изменять app.config, вы можете просто отредактировать файл appname.exe.config и перезапустить приложение.

1 голос
/ 20 сентября 2008

Одним из хороших решений является добавление другого соединения в сам файл dbml. Вы можете добраться до этого, щелкнув правой кнопкой мыши на поле области дизайна и выбрав свойства. Оттуда вы можете добавить еще одну строку подключения. Вместо того, чтобы удалять все и перерисовывать, просто измените строку и перекомпилируйте.

Но если вы хотите получить фантазию, вы можете настроить программу на автоматическое определение, выполняется ли она локально или нет, с помощью этой удобной служебной функции: обнаружение локального

И перейдите оттуда, чтобы установить соответствующую строку подключения на основе результатов.

1 голос
/ 08 сентября 2008

Если я правильно понимаю вашу проблему, вы просто измените строку подключения базы данных в вашем app.config / web.config.

Редактировать , после уточнения: где-то хранятся строки подключения. Они могут быть в app.config вашего сервера. Тем не менее, вы получаете их откуда-то, и это может быть где-то в app.config. Используйте это тогда:)

0 голосов
/ 08 сентября 2008

Я полагаю, что вы можете сохранить информацию о соединении в файле app.config и получить его оттуда. Здесь - сообщение о том, как сделать это с помощью LINQ to SQL. Развернув его на рабочем сервере, вы можете просто отредактировать XML, чтобы изменить источник данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...