2009-04-04 29 views
22

Estoy tratando de obtener un ID de usuario almacenado en las cookies a través de un archivo común de controlador, al que puedo acceder a través del sitio.¿Cómo accedo a Request.cookies en un controlador ASP.NET MVC?

He creado FunctionsController como un controlador, con el contenido de la siguiente manera:

public static int loggedinUser() 
{ 
    return Convert.ToInt32( request.Cookies["userid"].Value); 
} 

no estoy en condiciones de solicitar ningún artículo de galletas aunque lo intentara con:

HttpRequestBase request = controllerContext.HttpContext.Request; 

Respuesta

23

no tengo un problema al acceder a las cookies en ASP.NET MVC usando una declaración de acceso estándar como:

Request.Cookies["someCookie"] 

Su muestra tenía una "r" en minúscula en "request.Cookies". ¿Podria ese ser tu problema?

+0

dice que se requiere una referencia de objeto para el campo no estático, método o propiedad 'System.Web.Mvc.Controller.Request.get' –

+0

utilizando System; using System.Collections.Generic; using System.Linq; using ystem.Web; using System.Web.Mvc; utilizando CRM.Models; espacio de nombres MarcelCRM.Controllers {public class FunctionsController: Controller {\t public static int loggedinUser() {return Convert.ToInt32 (Request.Cookies ["someCookie"]); \t}}} –

8

quitar la parte static de su declaración de método y luego utilice Request.Cookies["userId"]

+0

En cuanto a su excepción, esta es probablemente la respuesta. – WoIIe

Cuestiones relacionadas