Почему я получаю сообщение об ошибке «Не удалось загрузить тип« CADE.main.index ».»на новом сервере, когда я использую тот же код на всех других экземплярах, как это исправить? - PullRequest
0 голосов
/ 09 октября 2019

Я только что проверил мой «смешанный» (asp classic и .Net) исходный веб-сайт из SVN на новом Windows 2019 Server. Когда я перехожу на страницу входа (.asp classic), это нормально, но когда вы входите в систему и вызываете главную страницу (.aspx), она выдает ошибку: «Не удалось загрузить тип 'CADE.main.index'" и отображает:

Line 1:  <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="index.aspx.cs" Inherits="CADE.main.index" %>

Этот код SVN работает на 15+ серверах, включая один сервер 2019. Код выглядит следующим образом:

namespace CADE.main
{
    public partial class index : BasePage  // Override with BasePage
    {

IIS и все, что находится в разработке приложений, установлено. IIS обслуживает .asp, .txt, .gif, .png, даже обработчики .Net (.ashx) и веб-службы (.asmx), но не страницы aspx.

Итак, я пересобрал решение с VS2019 и опубликовал его, дал разрешения администратора для пула приложений, дал «Все» полные разрешения для всей сети, удалил каталоги bin как в исходном, так и в веб-расположении. путь вывода был bin /, очистил проект, не думаю, что я должен изменить CodeBehind на CodeFile, и пробовал все, что люди предлагали на этом веб-сайте, но ничего не устранило ошибку.

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

РЕДАКТИРОВАТЬ # 1: 15 часов после публикации Я не уверен, но с этой информацией, возможно, это должно быть новое сообщение.

Эта ошибка происходит ТОЛЬКО на втором веб-сайте. IIS обслуживает два веб-сайта, разделяя их по имени хоста (web1.com и web2.com) в привязках. Они оба указывают на одну и ту же файловую структуру. Подкаталоги Web1 являются естественными, в то время как подкаталоги Web2 являются виртуальными каталогами, которые указывают на Web1.

Web1: обычный веб-сайт IIS wwwroot

  • LMW (веб-страница, LMW / Main / index.aspx - это страница ввопрос, но работает здесь)

Web2: вторая сеть в IIS, основанная на имени хоста, использует папки Web1 в качестве виртуальных каталогов.

wwwroot

  • WEB2 (папка под wwwroot)
  • LMW (виртуальный каталог указывает на Web1 / wwwroot / LMW. LMW / Main / index.aspx выдает здесь ошибку)

Вопрос: почему нет? t .aspx работает, когда это виртуальный каталог? ... это тот же файл, что и в Web 1?

1 Ответ

0 голосов
/ 10 октября 2019

Эти ошибки возникают, если страница .aspx или страница Global.asax содержит ссылку на модуль с выделенным кодом и если приложение не было создано.

Вы можете попробовать следующий метод для создания приложения:

С помощью компилятора командной строки C # (CSC.exe) выполните следующую команду:

csc /t:library /r:System.web.dll /out:mydll.dll myfile.cs

ИЛИ

В Microsoft Visual Studio .NET, нажмите «Построить» в меню «Построение».

Также попробуйте изменить CodeBehind = "index.aspx.cs" на CodeFile= "index.aspx.cs" . Это изменение требуется при изменении типа проекта с веб-сайта на веб-приложение или наоборот.

убедитесь, что вы устанавливаете компонент .ne framework в iis.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...