#c# #asp.net
#c# #asp.net
Вопрос:
Это может показаться сумасшедшим, но у меня нет другого выбора, кроме как опубликовать этот вопрос. Один из тестировщиков поднял вопрос, когда страница передается в качестве аргумента на ту же страницу, и она показывает странные результаты.
url-адрес выглядит следующим образом: http://localhost:60729/default.aspx/default.aspx Или также http://localhost:60729/default.aspx/account.aspx
Теперь мой вопрос заключается в том, что при тестировании этого в локальной среде он показывает, что ресурс не найден, НО при размещении на сервере IIS он не показывает никакой ошибки ресурса.
Почему?? Мне не хватает какой-то базовой логики
Комментарии:
1. Вы уверены, что ваш порт правильный?
2. сумасшедшая вещь в том, что она нигде не должна работать
3. что это за странный результат, который получает тестировщик
4. порт @viveknuna равен 60729. я отредактировал то же самое.
5. Возможно ли, что вы развернули это на компьютере IIS через файловую систему и в подкаталог с именем default.aspx?
Ответ №1:
Вы можете проверить маршрутизацию (расположенную в App_start), если вы используете шаблон. Проверьте URL страницы (щелкните страницу в обозревателе решений и проверьте раздел «Перейти к URL» в свойствах. Проверьте свойства, пусть он запускается на странице (вкладка проекта -> «Имя» Свойства -> Веб -> Начать действие -> Конкретная страница.). Проверьте, работает ли он также, каков URL. Если все еще не работает, я рекомендую отредактировать порт. Это может быть достигнуто 2 способами.
- Перейдите в Свойства -> Веб-страница и проверьте / отредактируйте порт localhost (в разделе Серверы -> URL проекта)
- Нажмите на ваше решение в обозревателе решений и проверьте URL-адрес в окне свойств ниже.
Если все еще не работает: попробуйте отредактировать файл web.config с помощью этого кода:
<system.webServer>
<defaultDocument>
<files>
<clear />
/* option 1 /*
<add value="default.aspx/default.aspx" />
/* option 2 /*
<add value="default.aspx" />
</files>
</defaultDocument>
</system.webServer>
Также: почему default.aspx/default.aspx? Я думаю, что точка в первом значении по умолчанию также может быть источником проблем.
Редактировать
Итак, я заново создал вашу страницу (без кода), и вот результат:
Он отлично работает на локальном хосте. HTML-код:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
This is the default page<br />
Enter name:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<br />
Enter Age:<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
</div>
</form>
</body>
</html>
Я предлагаю, если вообще ничего не работает, перестроить ваш проект. Сейчас это единственный способ.
Комментарии:
1. Забавно, потому что localhost также является сервером IIS, но затем на локальном компьютере. Я не думаю, что установка плохая, но, учитывая все, что вы пробовали, вы могли бы рассмотреть возможность переустановки пакета IIS.
2. Ну, я вообще не думаю, что это проблема IIS. Я видел несколько веб-сайтов live .aspx, которые также имеют ту же проблему. Я бы посоветовал вам попробовать все варианты самостоятельно, создав какое-нибудь фиктивное приложение и протестировав его. Если это работает, пожалуйста, поделитесь абстрактным кодом.
3. @Arjun Я этим занимаюсь.
4. ваш код работает нормально, но разместили ли вы свое приложение на сервере IIS и протестировали его, передав ту же страницу в качестве аргумента? Проблема возникает после размещения приложения на сервере. В противном случае он отлично работает на localhost.
5. Также речь идет не о передаче той же страницы. я могу ввести любую другую страницу в качестве аргумента. Но эта проблема не в приложении MVC. Там маршрутизация отлично выполняет свою работу