public async Task <CookiePullModel> CreateCookieDataInstanceAsync(string data, DateTimeOffset expiration, CookieType cookieType, BPAuthContext context) { var cookieCode = ""; var pullModel = new CookiePullModel(); using (var encrypt = new EncryptionHandler()) { cookieCode = encrypt.RandomString(random.Next(20, 50)); } pullModel.Code = cookieCode; pullModel.Expiration = expiration; // now let's create this cookie var cookie = new Cookie { Code = cookieCode, Data = data, DateSet = DateTimeOffset.Now, Expiration = expiration, CookieType = cookieType }; context.Cookies.Add(cookie); var methodResults = await context.SaveChangesAsync(context); if (methodResults.Success) { pullModel.ID = cookie.ID; } else { return(new CookiePullModel()); } return(pullModel); }
public HttpCookie CreateCookie(string name, DateTimeOffset expiration, CookiePullModel pullModel) { var cookie = new HttpCookie($"{cookiePrefix}{name}"); cookie["ID"] = pullModel.ID.ToString(); cookie["Code"] = pullModel.Code; cookie.Expires = new DateTime(expiration.Year, expiration.Month, expiration.Day); return(cookie); }