Давно читал, первый раз постер.
Итак, у меня есть проект asp.net VisualStudio2010 (.net 4.0). Проект отлично работает, когда я запускаю его через Visual Studio. Если вручную скопировать файлы на мой тестовый сервер, тоже отлично работает.
Проблема заключается в том, что когда я публикую сайт через веб-развертывание, я получаю NullReferenceException всякий раз, когда мой код пытается создать экземпляр нового класса, предоставляемого пакетом nuget.
В этом примере MySql.* — это пакет, установленный через nuget. Каталог пакетов включен в проект.
Imports MySql.Data
Imports MySql.Data.MySqlClient
Public Class TestClass
Public Sub Load()
Dim da As MySqlDataAdapter = New MySqlDataAdapter() ' NullReferenceException thrown here.
End Sub
End Class
Серьезно, любая помощь будет здорово! Спасибо.
Обновление: проблема решена
Поэтому я решил свою проблему, изменив следующий параметр: Свойства проекта -> Пакет/публикация в Интернете > Элементы для развертывания. Измените с «Только файл, необходимый для запуска этого проекта» на «Все файлы в этом проекте».
Это фактически сделало то же самое, что и мой ручной толчок раньше.
Насколько я понимаю, мои скомпилированные сборки передавались, но никогда не загружались в виртуальную машину .net на сервере IIS. Странный. Пожалуйста, поправьте меня, я хотел бы знать немного больше.