У меня есть что-то вроде ядра asp.net (я использую ядро asp.net c #, используя бритву):
@Html.ActionLink("Edit", "EditEmployee","Employee", new { id = item.id})
этот item.id является base64string, который будет декодировать в среднем слое, и у него есть слеш('/') символ в закодированной строке, поэтому action не может его понять, а параметр action имеет значение null.
Мой вопрос заключается в том, как я могу отправить этот item.id в свое действие, так как это base64string, содержащее слеш ('/').
это мой маршрут к карте в файле startup.cs:
routes.MapRoute(
name: "EditEmployee",
template: "{controller=Employee}/{action=EditEmployee}/{id?}");
Это моё действие, которое мне нужно вызвать ... но параметр sule to double slash получаетноль.
[HttpGet]
[ActionName("EditEmployee")]
public async Task<IActionResult> EditEmployee(string id)
{
if (!string.IsNullOrEmpty(id))
{
var result = await _accountAction.GetEditEmployee(id);
if (result.Item1)
{
return View(result.Item2);
}
}
return RedirectToAction(nameof(ListEmployee));
}