MVC Web 中的操作 API 控制器未触发
Action in MVC Web API controller not firing
我有一个 ASP .Net Core 1.1 MVC Web Api。在其中,我有一个似乎无法正常工作的控制器。当我导航到其中一项操作(它只有一个)时,它不会触发:
namespace InspectionsWebApi.Controllers
{
[Produces("application/json")]
[Route("api/ValidateUsers")]
public class ValidateUsersController : Controller
{
private readonly InspectionsContext _context;
private readonly ILogger<UsersController> _logger;
public ValidateUsersController(InspectionsContext context, ILogger<UsersController> logger)
{
_context = context;
_logger = logger;
}
// GET: api/ValidateUsers/abcde12345
[HttpGet("nameIdentifier")]
public async Task<IActionResult> ValidateUser([FromRoute] string nameIdentifier)
{
// This code never fires
}
}
}
我导航到
http://localhost:50082/api/validateusers/john123
我收到 404 错误。
您忘记使用大括号使其成为路由值:
[HttpGet("{nameIdentifier}")]
通过在没有花括号的情况下指定它,它期望 URL 像 http://localhost:50082/api/validateusers/nameIdentifier
.
我有一个 ASP .Net Core 1.1 MVC Web Api。在其中,我有一个似乎无法正常工作的控制器。当我导航到其中一项操作(它只有一个)时,它不会触发:
namespace InspectionsWebApi.Controllers
{
[Produces("application/json")]
[Route("api/ValidateUsers")]
public class ValidateUsersController : Controller
{
private readonly InspectionsContext _context;
private readonly ILogger<UsersController> _logger;
public ValidateUsersController(InspectionsContext context, ILogger<UsersController> logger)
{
_context = context;
_logger = logger;
}
// GET: api/ValidateUsers/abcde12345
[HttpGet("nameIdentifier")]
public async Task<IActionResult> ValidateUser([FromRoute] string nameIdentifier)
{
// This code never fires
}
}
}
我导航到
http://localhost:50082/api/validateusers/john123
我收到 404 错误。
您忘记使用大括号使其成为路由值:
[HttpGet("{nameIdentifier}")]
通过在没有花括号的情况下指定它,它期望 URL 像 http://localhost:50082/api/validateusers/nameIdentifier
.