#c# #asp.net-core
Вопрос:
Я создал новый простой контроллер, но когда я ввел следующий адрес в браузере, не смог его найти!
http://localhost:5000/Test/Index
Тест.cs:
using Microsoft.AspNetCore.Mvc;
namespace Test.Controllers
{
[Route("[controller]/[action]")]
public class TestController : Controller
{
[HttpGet]
public IActionResult Index()
{
return Content("Welcome");
}
}
}
Startup.cs
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.DependencyInjection;
namespace Test
{
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
services.AddControllers();
services.AddRazorPages().AddRazorRuntimeCompilation();
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
app.UseStaticFiles();
app.UseRouting();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllers();
endpoints.MapRazorPages();
});
}
}
}
Где я сделал что-то не так?
Ответ №1:
сначала отредактируйте свой атрибут контроллера :
[Route("[controller]/[action]")]
Для
[Route("[controller]")]
и
попробуйте это
app.UseEndpoints(endPoints =>
{
endPoints.MapControllerRoute(
"default",
"{controller}/{action}/{id?}");
});
также убедитесь, что вы используете правильный порт по умолчанию 5000 или 5001
Ответ №2:
Пожалуйста, убедитесь, что вы используете правильный номер порта.
Комментарии:
1. Пожалуйста, добавьте какое-нибудь объяснение к вашему решению