Попробуйте использовать:
return RedirectToAction("ReadPage", "MyController", new {page = 1});
Ему нужно знать, какой аргумент вы имеете в виду (как в более общем случае, вы можете иметь много параметров), который он может вывести из приведенного выше.
Шаблон анонимного типа (см. Выше) очень смелый в ASP.NET MVC, хотя во многих случаях
Я полагаю, что вы можете также дать ему заполненный словарь, чтобы означать то же самое.
Также - в этом случае нет необходимости в двух действиях; Вы можете настроить свои маршруты для предоставления значений по умолчанию; вот некоторые, которые я отправил ранее:
public ActionResult Search(string query, int startIndex, int pageSize)
{
...
}
с маршрутами:
routes.MapRoute("Search", "Search/{query}/{startIndex}",
new {
controller = "Home", action = "Search",
startIndex = 0, pageSize = 20
});
Теперь, если я не предоставляю startIndex, он передает 0 в мой поиск по умолчанию. Таким образом, я могу перейти к «/ Foo» для поиска по умолчанию или «/ Foo / 100», чтобы выполнить тот же поиск, начиная с 100. В качестве альтернативы, аргументы могут быть в строке запроса и все равно будут иметь значения по умолчанию, используя значения из анонного типа.