Il y a deux pages, l'une est Éditer la page et l'autre est Page principale de détail qui est les données combinées de certaines entités Dans la page d'édition: après l'édition terminée et j'ai publié les données sur l'API comme ci-dessous
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();
}
}
L'ID dans OnPostMethod (Guid id) est la valeur de l'entité éditée. J'utilise la valeur et j'utilise l'autre comme route ci-dessous pour obtenir la page de détails.
ManufacturerAuthorizedPerson.ManufacturerId = GetManufacturerId(id);
mais sur la page de détails, la valeur provenant de l'ID d'itinéraire que j'ai envoyé à partir de la méthode de publication des pages d'édition comme ci-dessous
return RedirectToPage("../Detail", ManufacturerAuthorizedPerson.ManufacturerId);
ne s'affiche pas comme URL de route.Au lieu de l'ID, c'est la même chose que j'ai été envoyée à la page d'édition. Un peu confus. Besoin d'aide s'il vous plaît.
ÉDITER :
changé la route vale comme ci-dessous:
if (HttpResponseMessage.IsSuccessStatusCode)
{
return RedirectToPage("../Detail", new {id = ManufacturerAuthorizedPerson.ManufacturerId });
}
et je peux envoyer l'ID avec succès.
Soudain, j'ai trouvé une solution simpe à ce problème. Vous devez taper:
return RedirectToPage("../Detail", new {id = ManufacturerAuthorizedPerson.ManufacturerId});