asp.net core 2 razor pages route с идентификатором

Есть две страницы: одна - страница редактирования, а другая - страница основных сведений, которая объединяет данные некоторых объектов. На странице редактирования: после того, как редактирование выполнено, и я отправил данные в API. как показано ниже

public async Task<IActionResult> OnPostAsync(Guid id)
    {
        ManufacturerAuthorizedPerson.Id = id;
        ManufacturerAuthorizedPerson.ManufacturerId = GetManufacturerId(id);
        if (!ModelState.IsValid)
        {
            await OnGetAsync(id);
            return Page();
        }
        HttpResponseMessage = await httpSystemApi.PutAsync("ManufacturerAuthorizedPersons", ManufacturerAuthorizedPerson);
        if (HttpResponseMessage.IsSuccessStatusCode)
        {
            return RedirectToPage("../Detail", ManufacturerAuthorizedPerson.ManufacturerId);
        }
        else
        {
            await OnGetAsync(id);
            return Page();
        }
    }

Идентификатор в OnPostMethod (Guid id) - это значение редактируемого объекта. Я использую значение и получаю другое значение для использования в маршруте, как ниже, чтобы получить страницу с подробными сведениями.

ManufacturerAuthorizedPerson.ManufacturerId = GetManufacturerId(id);

но на странице сведений значение, полученное из идентификатора маршрута, который я отправил из метода публикации страниц редактирования, как показано ниже

 return RedirectToPage("../Detail", ManufacturerAuthorizedPerson.ManufacturerId);

не отображаются как URL-адрес маршрута. Вместо идентификатора он такой же, как я был отправлен на страницу редактирования. Немного запутался. Нужна помощь, пожалуйста.


person S. Aziz Kazdal    schedule 08.09.2017    source источник
comment
Почему вы не можете вместо этого перенаправить к действию? Проверьте этот SO   -  person Siva Gopal    schedule 08.09.2017
comment
Возможный дубликат RedirectToAction с параметром   -  person Siva Gopal    schedule 08.09.2017
comment
Изменить расположение страницы: Pages / X / Y / Изменить и подробное расположение страницы Pages / X / Detail, поэтому я использую методы RedirectToPage.   -  person S. Aziz Kazdal    schedule 08.09.2017
comment
Не включайте, пожалуйста, ответы на вопрос (вместо этого отправьте отдельный ответ).   -  person user4157124    schedule 07.12.2020


Ответы (1)


Внезапно я нашел простое решение этой проблемы. Вы должны ввести:

return RedirectToPage("../Detail", new {id = ManufacturerAuthorizedPerson.ManufacturerId});
person Bogdan    schedule 31.07.2018