У меня есть веб-приложение, которое использует DLL-объекты Microsoft Sql Management Objects (SMO). Мне интересно, как я перераспределяю библиотеки для удаленной машины.
Насколько я понимаю, они поставляются с SQL-сервером или Sql Express, которых нет на удаленном (общем) веб-сервере. Просить хост установить их, возможно, не может быть и речи, так возможно ли их динамически загружать?
См. Ниже ошибка-
Не удалось загрузить файл или сборку 'Microsoft.SqlServer.Smo, версия = 9.0.242.0, культура = нейтральная, PublicKeyToken = 89845dcd8080cc91' или одна из ее зависимостей. Система не может найти указанный файл.
В качестве альтернативы, если кто-то может предоставить обходной путь для приведенного ниже фрагмента, который также будет полезен. Переменная script - это скрипт установки SQL, который был прочитан до конца. Хорошая вещь об этом - вывод каждой из строк выполнения из SQL. Конечно, я мог бы просто выполнить все это в одном фрагменте, но это не обеспечивает визуальную обратную связь с пользователем построчно, что sql выполняется нормально.
Есть ли хранимая процедура, которая могла бы выполнять подобные вещи? Или альтернативный способ выполнения сценария установки без полных разрешений.
Dim connection As New SqlConnection(Me.ConnectionString)
connection.Open()
connection.Close()
Dim server As New Server(New ServerConnection(connection))
server.ConnectionContext.SqlExecutionModes = SqlExecutionModes.ExecuteAndCaptureSql
Dim commands As StringCollection = server.ConnectionContext.CapturedSql.Text
server.ConnectionContext.ExecuteNonQuery(script, ExecutionTypes.ContinueOnError)
Dim s As String
For Each s In server.ConnectionContext.CapturedSql.Text
AppendMessages(s)
Next