Скомпилируйте веб-сайт asp.net и некоторые ссылки не будут скопированы в папку временных файлов ASP.NET
Scenerio: У меня есть веб-сайт asp.net, который я успешно компилирую, но в браузере постоянно появляется сообщение об ошибке, в котором говорится, что он не может найти dll, на которую ссылаются, в решении. Я проверил каталог в папке Temporary ASP.NET File, и там есть все мои DLL-библиотеки, на которые есть ссылки, кроме той, которую он не может найти. Я вручную добавил местоположение, которое он искал, и сайт работал. Ссылка на dll указана в коде, поэтому она должна быть перемещена во временную папку. Кто-нибудь знает, почему это произойдет? Я проверил свойства dll, на который указывает ссылка, и для параметра copy local установлено значение true, поэтому его следует переместить в выходной каталог.
3 ответа
Щелкните правой кнопкой мыши библиотеки DLL в каталоге References/Bin в вашем проекте и посмотрите на свойство Copy Local. Убедитесь, что они установлены в True.
После нескольких часов поиска в Google и ничего не найдя, я решил взглянуть на реальные свойства файла DLL. К моему удивлению, проблема закончилась разрешением. По какой-то причине одна dll, которая избивала меня весь день, нуждалась в правильных разрешениях для перемещения в папку вывода. ughhh.
Когда вы говорите "ссылка в коде", вы имеете в виду, что она указана в разделе "Ссылки" файла проекта? Или вы имеете в виду, что вы вручную ссылаетесь / называете его в своем исходном коде?
Вы пробовали это в своем файле web.config (или выше в цепочке конфигурации?)
<hostingEnvironment shadowCopyBinAssemblies="false" />
Где именно вы ожидаете, что это будет скопировано? По какому пути сообщается сообщение об ошибке?