2011-03-12 8 views

Respuesta

20

HttpContext.Request.UrlReferrer

+6

¿Qué pasa cuando UrlReferrer es nulo ... –

+0

todavía no está completamente contestadas. –

3

La mejor manera es simplemente pasar esta información a la acción del controlador.

Así, por ejemplo, usted podría incluir la URL de solicitud como un campo oculto:

<% using (Html.BeginForm("Process", "SomeController")) { %> 
    <%= Html.Hidden("requestUrl", Request.RawUrl) %> 
    <input type="submit" value="OK" /> 
<% } %> 

y dentro de la correspondiente acción del controlador:

[HttpPost] 
public ActionResult Process(string requestUrl) 
{ 
    // requestUrl will contain the url of the page used to 
    // render the form 
    ... 
} 

También es posible usar el controlador y la acción a partir de datos de rutas :

<% using (Html.BeginForm("Process", "SomeController")) { %> 
    <%= Html.Hidden("controllerName", ViewContext.RouteData.GetRequiredString("controller")) %> 
    <%= Html.Hidden("actionName", ViewContext.RouteData.GetRequiredString("action")) %> 
    <input type="submit" value="OK" /> 
<% } %> 

y controllerName y actionName se enviará en la solicitud POST.

Cuestiones relacionadas