如何在ASP.NET Core中配置端点路由



我在ASP.NET Core中是新的,因为我的基础来自spring框架所以,我很难在asp.net中设置端点,所以下面是我的一些控制器和startup.cs

控制器:

[Route("api/[controller]/[action]")]
[ApiController]
public class StudentController : ControllerBase
{
[HttpPost]
[ActionName("GetData")]

在应用程序上启动.cs。使用端点((:

app.UseEndpoints(endpoints =>
{
endpoints.MapControllers();
});
}

当我尝试在本地运行该应用程序并访问端点http谓词(localhost:5001/api/GetData(时,它开始显示错误代码,那么我应该如何修复它呢?我应该在startup.cs中设置端点路由,还是因为在控制器中我有[HttpPost][ActionName("GetData"(]而不必设置端点路由???顺便说一句,我想我使用的是最新的asp.net核心(不过我不知道该怎么查(,Thankss

写入时:

[Route("api/[controller]/[action]")]

这意味着当用这个字符串的后缀对你的基域调用http调用时,你可以访问你的控制器\方法

在这种情况下,您要求动态地选择一个控制器,并动态地选择动作,这被称为";路由模板中的令牌替换";

写入[controller][action]时这意味着这些在运行时是动态的action表示方法名称controller表示控制器名称

如果是你的情况,你应该打电话https://localhost:5001/api/Student/GetData

更多信息可以在这里找到:https://learn.microsoft.com/en-us/aspnet/core/mvc/controllers/routing?view=aspnetcore-路由模板控制器动作区中的5.0#令牌替换

最新更新