0

我有一個ASP .Net Core 1.1 MVC Web Api。其中,我有一個似乎沒有工作的控制器。當我找到它的行動之一(它只有一個),它不觸發: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錯誤。

回答

1

你忘了花括號,使之成爲路線值:

[HttpGet("{nameIdentifier}")] 

通過指定它沒有花括號,它希望像http://localhost:50082/api/validateusers/nameIdentifier的URL。

+0

謝謝sooo mcuh juunas!這個竅門!我真的認爲花括號使參數可選? – user1900799

相關問題