Deekshaa Singh Chauhan Ответов: 3

Как опубликовать проект .NET C# с базой данных SQL server на другом компьютере?


Я хочу опубликовать настольное приложение на другом хост-компьютере. Я пробовал публиковать с помощью SQL Server Compact, но это не сработало. Какие изменения следует внести в Visual Studio и SQL Server, чтобы я мог установить свое приложение на любой компьютер?

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

Какие изменения я должен внести в установку моего приложения на любом компьютере?

F-ES Sitecore

Если ваше приложение полагается на SQL Server, целевой машине нужен доступ к своему собственному SQL Server, SQL не является распространяемым проектом. Вам нужно будет использовать базу данных, которую вы можете распространять, например SQLite, SQL Compact и т. д. Если вы пробовали SQL Compact, но не можете заставить его работать, вам нужно потратить время на исправление этой проблемы, а не сосредотачиваться на решении, которое вы получите.

3 Ответов

Рейтинг:
1

Afzaal Ahmad Zeeshan

Только не делайте этого. Только не делайте этого. Только не делайте этого.

Почему вы требуете, чтобы ваши клиенты устанавливали полный движок SQL Server только для установки вашего приложения? SQL Server поставляется с минимальным объемом установки около 1 ГБ, с большим количеством конфигураций, настроек, управления учетными записями и всего остального. Зачем тебе это нужно?

Вместо этого рассмотрим базу данных SQLite для приложений C# (или саму платформу .NET framework). SQL Server Compact Edition был потерян в лесу, и даже Microsoft начала использовать базы данных SQLite, например, в своей платформе UWP. Он показывает большой потенциал, и для незначительных требований источника данных на локальных машинах вы можете использовать эту "безмоторную" базу данных. Он не требует никакой предварительной установки. Вы просто просите движок подключиться к базе данных или создать ее для вас, если она не существует.

Это просто простая база данных db. sqlite, которая содержит весь ваш контент и поддерживает типичные (но не все!) функции ядра базы данных. Посмотрите на это, вместо того чтобы заставлять своих клиентов устанавливать SQL Server.

Для получения образца, пожалуйста, прочтите это: Начало работы с SQLite в C# - блог Тиграна[^]

System. Data.SQLite Часто Задаваемые Вопросы[^]

Но если вы действительно хотите это сделать, установите экземпляр SQL Server в размещенном веб-приложении, например на веб-сайте, и разрешите своим клиентам подключаться к этой базе данных. Это поможет вам во многих случаях, вам придется управлять только одной базой данных, а не ядром базы данных, установленным на каждом клиенте.

Кроме того, как насчет тех клиентов, которые не могут себе этого позволить? В конечном итоге вы потеряете много клиентов и потенциальных клиентов.


Deekshaa Singh Chauhan

мое программное обеспечение работает в windows 7 bt оно не работает в windows xp

Afzaal Ahmad Zeeshan

Объясните, пожалуйста, почему он не работает?

Deekshaa Singh Chauhan

Что?

Рейтинг:
1

OriginalGriff

Цитата:
Я пробовал публиковать с помощью SQL Server Compact, но это не сработало.

Так что выясните почему.
SQL Sever Compact (или SQL CE) тривиально публиковать вместе с вашим приложением - это пара простых DLL-сборок. SQL Server требует "правильной" установки, что означает планирование, топографию, учетные записи пользователей и разрешения, а также кого-то, кто знает, что они делают, чтобы администрировать его изо дня в день и создавать резервные копии по регулярному расписанию.

Вы не должны даже думать настаивать пользователям установить SQL сервер, если вашему приложению требуется многопользовательский доступ к БД.


Рейтинг:
0

RickZeeland

Если вам нужно установить SQL Server, .NET framework или Visual C runtimes вместе с вашим приложением, вот интересный пример .Установщик Зависимостей InnoSetup':
GitHub-stfx/innodependencyinstaller: модульный установщик зависимостей InnoSetup[^]Самое приятное, что все делается с использованием версий веб-установщика, поэтому ваш установочный пакет остается небольшим !