Я использую ASP.NET Core restful web API.Моя проблема в том, что у меня есть проверка сервера внутри моего контроллера, чтобы проверить проверку модели представления (Contact.cs
).
Однако, когда я проверяю свое POST
действие CreateContact
в контроллере, действие никогда не выполняетсявведено, но оно проверено правильно в соответствии с аннотациями данных, которые есть в моем классе Contact.cs
.
Я не понимаю, почему проверка проходит перед входом в контроллер.Я думал, что в веб-API проверка сервера будет проверяться в Controller
в соответствии с ModelState
.Тогда моя ModelState.IsValid
проверка кажется бесполезной.
Моя модель просмотра:
public class Contact
{
[Required]
public int? Id { get; set; }
[MaxLength(20)]
public string FirstName { get; set; }
// ...
}
Часть действия моего контроллера, которая никогда не вводится.
[Route("api/[controller]")]
[ApiController]
public class ContactsController : ControllerBase
{
[HttpPost]
public IActionResult CreateContact(ViewModels.Contacts.Contact contact)
{
if (!ModelState.IsValid)
{
return BadRequest(ModelState);
}
// ...
}
}