Вы должны установить правильный заголовок для вашего запроса, как,
var postData = {
userRoles: ['User', 'Worker'],
email: 'email@email.com'
};
const headers: HttpHeaders = new HttpHeaders();
headers.set('Content-Type', 'application/x-www-form-urlencoded');
this.http.post('/UserRole/SaveUserRoles', postData, { headers: headers })
.subscribe(result => {
});
А для вашей стороны контроллера,
Мне не нужен объект только для 2 параметров.
Но это хорошая практика - перехватывать все ваши опубликованные данные в модели или объекте c #.
Итак, я создаю пример класса.
class PostData
{
public string[] userRoles { get; set; }
public string email { get; set; }
}
[HttpPost]
public async Task<IActionResult> SaveUserRoles([FromBody]PostData postData)
{
return Ok();
}