Session 将数据存储到客户端的最佳方法
我的Put方法如下:Session 将数据存储到客户端的最佳方法,session,asp.net-web-api,asp.net-mvc-5,session-state,Session,Asp.net Web Api,Asp.net Mvc 5,Session State,我的Put方法如下: public void Post([FromBody]RavenUserView view) { if (ModelState.IsValid) { var request = new CreateUserRequest(); request.ID = view.ID; request.Name = view.Nam
public void Post([FromBody]RavenUserView view)
{
if (ModelState.IsValid)
{
var request = new CreateUserRequest();
request.ID = view.ID;
request.Name = view.Name;
request.UserName = view.UserName;
request.Password = EncryptionDecryption.EncryptString(view.Password);//Encrypt The Password
request.Email = view.Email;
request.Phone = view.Phone;
request.Country = "x";
request.Note = "y";
request.IsActive = view.IsActive;
request.Creator = view.Creator;
request.CreationDate = DateTime.UtcNow;
request.ModificationDate = DateTime.UtcNow;
request.Remarks = "z";
var response = _facade.CreateUser(request);
SaveUserDetailsToCookie(response.RavenUser.ID, response.RavenUser.UserName, EncryptionDecryption.DecryptString(response.RavenUser.Password));//Cookie should be stored Decrypted Format
HttpContext.Current.Session[SessionDataKey.UserId.ToString()] = response.RavenUser.ID.ToString();
HttpContext.Current.Session[SessionDataKey.UserName.ToString()] = response.RavenUser.UserName;
}
}
但当我运行我的项目并试图保存我的信息时,它会向我抛出一个异常“对象引用未设置为对象的引用”
我使用WebAPI作为我的控制器类
在阅读了各种文档之后,我发现Api是无状态的。现在,我如何存储我的用户信息以供进一步使用。使用:
public void Post([Bind(Include = "ID,Name,UserName,....")] CreateUserRequest request)
{
if(ModelState.IsValid)
{
var response = _facade.CreateUser(request);
SaveUserDetailsToCookie(response.RavenUser.ID, response.RavenUser.UserName, EncryptionDecryption.DecryptString(response.RavenUser.Password));//Cookie should be stored Decrypted Format
HttpContext.Current.Session[SessionDataKey.UserId.ToString()] = response.RavenUser.ID.ToString();
HttpContext.Current.Session[SessionDataKey.UserName.ToString()] = response.RavenUser.UserName;
}
}
它会在会话中保留我的值吗?它正在绑定视图中的模型。