Я хотел бы знать, как передать строковый параметр с помощью RedirectToAction ().
Допустим, у меня есть этот маршрут:
routes.MapRoute(
"MyRoute",
"SomeController/SomeAction/{id}/{MyString}",
new { controller = "SomeController", action = "SomeAction", id = 0, MyString = UrlParameter.Optional }
);
А в SomeController у меня есть действие, выполняющее перенаправление следующим образом:
return RedirectToAction( "SomeAction", new { id = 23, MyString = someString } );
Я пробовал это перенаправление с помощью someString = "! @ # $%? & * 1 "и он всегда терпит неудачу, независимо от того, кодирую ли я строку. Я пробовал кодировать ее с помощью HttpUtility.UrlEncode (someString), HttpUtility.UrlPathEncode (someString) и Uri.EscapeUriString (someString), но безрезультатно.
обратились к нам TempData для передачи someString, но все же мне было бы любопытно узнать, как заставить работать приведенный выше код, просто чтобы удовлетворить мое любопытство.