Member 11298827 Ответов: 2

Невозможно бежать ASP.net страницы на веб-сервере


Я новичок в этом деле ASP.net, и у меня возникли проблемы с запуском моего проекта на веб-сервере.
Visual Studio Community 2015, .Net Framework 4.5.2
Проект отлично работает на моей локальной машине. Я опубликовал его на веб-сервере (используя FTP), и когда я запускаю его с сервера, я получаю ошибку. Он захлебывается в файле Web.config на линии -

type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"


Ошибка, которая возвращается, такова: -

Parser Error Message: The CodeDom provider type "Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" could not be located.


Похоже, что он не находит компилятор CodeDom - или что-то в этом роде, хотя я вижу материал CodeDom в папке bin, который загрузил ok.
Моя учетная запись веб-хостинга настроена на поддержку ASP.net 4.0 и 4.5
Есть ли что-то еще, что мне нужно включить в проект? Любая помощь будет очень признательна.

Победитель

[no name]

Убедитесь, что на вашем сервере правильно установлена правильная версия .Net Framework. Во-вторых, просто проверьте, что ваше приложение пул ссылается на какую версию.

Member 11298827

Спасибо за ответ - я работаю с хостинг-провайдером, чтобы убедиться, что моя учетная запись настроена правильно. Судя по тому, что я вижу, так оно и есть. Ко второй части вашего комментария - у меня есть только один .Проект ASP на сервере, так что я не думаю, что может возникнуть конфликт. Я думаю, именно это вы и имели в виду.

В разделе Ссылки обозревателя решений я вижу Microsoft.граф CodeDOM.Услуги поставщиков.DotNetCompilerPlatform - это версия 1.0.0.0, но версия времени выполнения v4.0.30319. В сообщении об ошибке с сервера я вижу:
Информация о версии: Microsoft .NET Framework версия:4.0.30319; ASP.NET версия:4.0.30319.34249.

Так же как и 4.0.30319-версия для .NET Framework (и ASP.NET) или это относится к компилятору CodeDom? Я в замешательстве.

2 Ответов

Рейтинг:
2

Mariano Acebal

попробуйте выполнить развертывание в корневой папке вашего веб-сайта. У меня была эта проблема, потому что IIS не реконфигурировал подпапки как часть веб-сайта.
я решил эту проблему, преобразовав эти подпапки в веб-приложения, но прежде всего вы должны сделать это, если сайт работает нормально в вашей корневой папке


Рейтинг:
0

Member 11298827

Я наконец - то смог заставить это работать-изначально я создал проект как веб-приложение, а не веб-сайт. После воссоздания в виде веб-сайта и публикации все работает нормально с сервера. Я заметил, что файл Web.config не имеет раздела system.codedom, как и раздел для веб-приложения. так что я думаю, что это не нужно для веб-сайта.
Кроме того, почему существует только отладочная конфигурация и нет конфигурации выпуска для проекта веб - сайта? Какое это имеет значение?
Я хотел бы понять разницу между веб-приложением и веб-сайтом. Есть предложения?

Кстати - я создал веб - сайт, ориентированный на .NET Framework 4.0 вместо 4.5.2 - не знаю, имеет ли это какое-то отношение к нему- вероятно, нет.


Gustav Brock

"Я создал проект как веб-приложение, а не веб-сайт."

Почему я об этом не подумал? Мне потребовалось два дня, чтобы исправить эту простую ошибку. Спасибо!