Подтвердить что ты не робот

Настройка страницы по умолчанию для конфигурации сервера ASP.NET(Visual Studio)

Когда я создаю и запускаю свое приложение, я получаю список каталогов в браузере (также происходит для вспомогательных папок), и я должен нажать на Index.aspx. Это делает меня сумасшедшим.

Visual Studio 2008 ASP.NET Development Server 9.0.0.0

4b9b3361

Ответ 1

Встроенный веб-сервер жестко связан с использованием Default.aspx в качестве страницы по умолчанию.

Проект должен иметь по крайней мере пустой файл Default.aspx для преодоления проблемы с листингом каталогов для Global.asax.

:)

После добавления этого пустого файла все запросы могут обрабатываться в одном месте.

public class Global : System.Web.HttpApplication
{
    protected void Application_BeginRequest(object sender, EventArgs e)
    {
        this.Response.Write("[email protected] " + this.Request.Path + "?" + this.Request.QueryString);
        this.Response.StatusCode = 200;
        this.Response.ContentType = "text/plain";

        this.Response.End();
    }
}

Ответ 2

Щелкните правой кнопкой мыши веб-страницу, которую вы хотите использовать в качестве страницы по умолчанию, и выберите "Установить как стартовую страницу" всякий раз, когда вы запускаете веб-приложение из Visual Studio, он откроет выбранную страницу.

Ответ 3

Перейдите на страницу свойств проекта, выберите вкладку "Веб" и сверху (в разделе "Начало действия" ) введите имя страницы в поле "Конкретная страница". В вашем случае index.aspx

Ответ 4

Как и для ответа zproxy выше, я использовал следующий код в Gloabal.asax.cs, чтобы добиться этого:

public class Global : System.Web.HttpApplication
{
    protected void Application_BeginRequest(object sender, EventArgs e)
    {
        if (Request.Url.AbsolutePath.EndsWith("/"))
        {
            Server.Transfer(Request.Url.AbsolutePath + "index.aspx");
        }
    }
}

Ответ 5

public class Global : System.Web.HttpApplication
{
    protected void Application_BeginRequest(object sender, EventArgs e)
    {
        if (Request.Url.AbsolutePath.EndsWith("/"))
        {
             Server.Transfer("~/index.aspx");
        }
    }
}

Ответ 6

Если вы работаете с IIS, а не с сервером VS webdev, убедитесь, что Index.aspx является одним из ваших файлов по умолчанию и что просмотр каталогов отключен.