Как внести ASP.NET Core MVC в существующий пустой проект ASP.NET? - PullRequest
0 голосов
/ 01 апреля 2019

У меня есть пустой проект ASP.NET Core, и он отлично работает для обслуживания статических файлов через https://localhost/filename. Теперь я хочу добавить в него функции MVC.Но, ссылаясь на https://docs.microsoft.com/en-us/aspnet/core/tutorials/first-mvc-app/adding-controller?view=aspnetcore-2.2&tabs=visual-studio, после добавления папки «Controllers» добавьте класс контроллера:

public class HelloWorldController : Controller
{
    // 
    // GET: /HelloWorld/Welcome/ 

    public string Welcome()
    {
        return "This is the Welcome action method...";
    }
}

StartUp.cs выглядит так:

    public void ConfigureServices(IServiceCollection services)
    {
        services.AddMvc();
    }

    // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
    public void Configure(IApplicationBuilder app, IHostingEnvironment env)
    {
        if (env.IsDevelopment())
        {
            app.UseDeveloperExceptionPage();
        }

        app.UseMvc();
        app.UseStaticFiles();
    }

Builder похож на:

return WebHost.CreateDefaultBuilder(args)
            .UseStartup<Startup>();

после всего этого я все еще не могу получить доступ "https://localhost/HelloWorld/Welcome/".

Что я пропустил?

1 Ответ

2 голосов
/ 01 апреля 2019

У вас не указан маршрут по умолчанию или какая-либо другая маршрутизация по этому вопросу.Самое быстрое решение - изменить app.UseMvc() на app.UseMvcWithDefaultRoute().Кроме того, вы можете добавить атрибуты маршрутов:

[Route("[controller]")]
public class HelloWorldController : Controller
{

    [HttpGet("Welcome")]
    public string Welcome()
    {
        return "This is the Welcome action method...";
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...