I’m trying to list incoming messages by category so in ui part when admin click on category then in controller part Id coming as zero.
I sent to Id number of categories to related urls but couldn’t read the value of Ids in controller.
<div class="list-group mail-list">
<a href="/AdminContact/InboxByCategory/2" class="list-group-item border-0"><span class="fa fa-briefcase f-s-14 mr-2"></span>Şikayet</a>
<a href="/AdminContact/InboxByCategory/1" class="list-group-item border-0"><span class="fa fa-sellsy f-s-14 mr-2"></span>Teşekkür</a>
<a href="/AdminContact/InboxByCategory/4" class="list-group-item border-0"><span class="fa fa-ticket f-s-14 mr-2"></span>Talep</a>
<a href="/AdminContact/InboxByCategory/3" class="list-group-item border-0"><span class="fa fa-tags f-s-14 mr-2"></span>Öneri</a>
</div>
public class AdminContactController : Controller
{
private readonly IHttpClientFactory _httpClientFactory;
public AdminContactController(IHttpClientFactory httpClientFactory)
{
_httpClientFactory = httpClientFactory;
}
public async Task<IActionResult> InboxByCategory(int categoryId)
{
var token = HttpContext.Session.GetString("AuthToken");
if (string.IsNullOrEmpty(token))
{
return Unauthorized();
}
var client = _httpClientFactory.CreateClient();
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);
var response = await client.GetAsync($"http://localhost:10881/InboxListByCategory/{categoryId}");
if (response.IsSuccessStatusCode)
{
var jsonData = await response.Content.ReadAsStringAsync();
var values = JsonConvert.DeserializeObject<List<InboxContactDto>>(jsonData);
return View("Inbox", values);
}
return View("Inbox");
}
public async Task<IActionResult> Inbox()
{
var token = HttpContext.Session.GetString("AuthToken");
if (string.IsNullOrEmpty(token))
{
return Unauthorized();
}
var client = _httpClientFactory.CreateClient();
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);
var response = await client.GetAsync("http://localhost:10881/InboxList");
if (response.IsSuccessStatusCode)
{
var jsonData = await response.Content.ReadAsStringAsync();
var values = JsonConvert.DeserializeObject<List<InboxContactDto>>(jsonData);
var contactCount = await GetContactCount();
ViewBag.ContactCount = contactCount;
ViewBag.SendMessageCount = await GetSendMessageCount();
return View(values);
}
return View();
}