我正在使用FormsAuthenticationTicket的UserData属性来存储某些用户特定的信息。我有一个HelperClass将这个UserData反序列化为一个用于强类型访问的自定义对象。我有我的控制器设置如下访问控制器构造函数中的Request.Cookies
public class SomeController : Controller
{
private CookieData _cookieData;
public SomeController()
{
_service = new ForderungsStellerService(new ModelStateWrapper(this.ModelState));
HttpCookie cookie = Request.Cookies[FormsAuthentication.FormsCookieName];
FormsAuthenticationTicket ticket = FormsAuthentication.Decrypt(cookie.Value);
_cookieData= GetSessionData.FromCookie(ticket);
}
}
问题似乎是,在控制器构建时请求为空。从ActionMethod访问Request.Cookies时,该代码片段正在工作。
我想有_cookieData对象在DRY原因的构造函数中填充。
有没有人对这个问题有暗示?
问候......
使用ModelBinder是一个聪明的主意。感谢它。解决了我的问题... – Gordon 2009-06-17 08:25:14