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); }