public int GetLoginPageTag(ActionExecutingContext context) { int result = 0; string IP = context.HttpContext.Request.UserHostAddress; LoginPageTrail tmpLPT = db.LoginPageTrails.FirstOrDefault(r => r.ClientIP.CompareTo(IP) == 0); if (tmpLPT != null) { if (tmpLPT.ErrorCount > LOGINLOCK) { result = -2; DateTime tmpDT = DateTime.Parse(tmpLPT.LogDate); tmpDT = tmpDT.AddSeconds(LOCKTIME); TimeSpan tmpTS = tmpDT - DateTime.Now; if (tmpTS.TotalSeconds < 0) { tmpLPT.ErrorCount = 0; db.SaveChanges(); result = 0; waitSeconds = 0; } else { waitSeconds = (int)tmpTS.TotalSeconds; } } else if (tmpLPT.ErrorCount > CHECKCODESHOW) { result = -1; } } return(result); }
public ActionResult Create(Role role) { if (ModelState.IsValid) { db.Roles.Add(role); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(role)); }
public ActionResult Create(Column column) { if (ModelState.IsValid) { db.Columns.Add(column); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(column)); }
public ActionResult Cart() { OrderVM tmpVM = new OrderVM(); //设置订单为其用户的订单 MyUser user = HttpContext.User as MyUser; if (HttpContext.User.Identity.IsAuthenticated && user != null) { tmpVM.Client = db.Users.FirstOrDefault(r => r.UID == user.UID); if (tmpVM.Client.DefaultAddress == null && tmpVM.Client.Addresses.Count > 0) { tmpVM.Client.DefaultAddress = tmpVM.Client.Addresses.First(); } tmpVM.OrderArr = new List <Order>(); bool hasCookie = Request.Cookies.AllKeys.Contains("Order"); HttpCookie cookie = null; int OrderID = -1; if (hasCookie) { cookie = Request.Cookies["Order"]; string tmpStr = Server.UrlDecode(cookie.Value); Regex cookieRgx = new Regex(ProductController.ORDERCOOKIERGX); Match tmpMatch = cookieRgx.Match(tmpStr); if (!string.IsNullOrEmpty(tmpMatch.Value)) { Group gi = tmpMatch.Groups["ORDERID"]; OrderID = int.Parse(gi.Value); Order order = db.Orders.FirstOrDefault(r => r.OID == OrderID); if (order != null) { if (order.Status >= (int)Order.EOrderStatus.OS_Subscription) { //已支付,不能修改订单,不能重新支付 return(Redirect("/Order/HasPayed/" + OrderID)); } else if (order.Status == (int)Order.EOrderStatus.OS_Order) { //已确认订单,不能修改了,只能整个删除 return(Redirect("/Order/Submit")); } order.UID = user.UID; db.SaveChanges(); tmpVM.OrderArr.Add(order); } } } List <Order> tmpOArr = db.Orders.Where(r => (r.OID != OrderID && r.UID == user.UID && r.Status == (int)Order.EOrderStatus.OS_Init)).OrderByDescending(r => r.OrderDate).ToList(); tmpVM.OrderArr.AddRange(tmpOArr); } return(View(tmpVM)); }
public ActionResult SaveBannerManager(List <BannerItem> AddArr, List <BannerItem> EditArr, List <BannerItem> DelArr) { if (AddArr != null) { foreach (BannerItem item in AddArr) { BannerItem tmpObj = item; PubFunction.NotNullObj(ref tmpObj); db.BannerItems.Add(tmpObj); } } if (EditArr != null) { foreach (BannerItem item in EditArr) { BannerItem tmpObj = item; //奇怪,传进来的明明是""但是在后台获取就是null,只能做转换了 PubFunction.NotNullObj(ref tmpObj); BannerItem tmpItem = db.BannerItems.FirstOrDefault(r => r.BIID == tmpObj.BIID); //tmpItem.Description = tmpObj.Description; //tmpItem.HrefPath = tmpObj.HrefPath; //tmpItem.ImgPath = tmpObj.ImgPath; //tmpItem.Index = tmpObj.Index; //tmpItem.Title = tmpObj.Title; PubFunction.CopyObj(tmpObj, ref tmpItem); } } if (DelArr != null) { foreach (BannerItem item in DelArr) { BannerItem tmpItem = db.BannerItems.FirstOrDefault(r => r.BIID == item.BIID); if (tmpItem != null) { db.BannerItems.Remove(tmpItem); } } } db.SaveChanges(); if (Request.IsAjaxRequest()) { string jsonStr = PubFunction.BuildResult("OK"); return(Content(jsonStr)); } else { return(View()); } }
public void WriteTrail(HttpRequest request) { ClientTrail tmpCT = new ClientTrail(); tmpCT.URL = request.Url.ToString(); if (request.RequestContext.RouteData.Route != null) { object tmpObj = request.RequestContext.RouteData.Route.GetRouteData(request.RequestContext.HttpContext).Values["controller"]; tmpCT.ControllerName = tmpObj != null?tmpObj.ToString() : ""; tmpObj = request.RequestContext.RouteData.Route.GetRouteData(request.RequestContext.HttpContext).Values["action"]; tmpCT.ActionName = tmpObj != null?tmpObj.ToString() : ""; } else { tmpCT.ControllerName = ""; tmpCT.ActionName = ""; } tmpCT.ClientIP = request.UserHostAddress; tmpCT.LogDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); MyUser tmpUser = request.RequestContext.HttpContext.User as MyUser; if (tmpUser != null && tmpUser.Identity.IsAuthenticated) { tmpCT.UID = tmpUser.UID; } db.ClientTrails.Add(tmpCT); db.SaveChanges(); }
public ActionResult submitEvaluation(Evaluation evaluation) { if (HttpContext.User.Identity.IsAuthenticated) { MyUser user = HttpContext.User as MyUser; if (user != null) { evaluation.UID = user.UID; } evaluation.DataTime = DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss"); db.Evaluations.Add(evaluation); db.SaveChanges(); evaluation.User = db.Users.FirstOrDefault(r => r.UID == evaluation.UID); evaluation.Order = db.Orders.FirstOrDefault(r => r.OID == evaluation.OID); EvaluationVM tmpEVM = new EvaluationVM(evaluation); if (Request.IsAjaxRequest()) { string jsonStr = PubFunction.BuildResult(tmpEVM); return(Content(jsonStr)); } else { return(View(tmpEVM)); } } else { string jsonStr = PubFunction.BuildResult("Err"); return(Content(jsonStr)); } }
public ActionResult SetSelectBrandsInColum(int id, List <ReColumnBrand> Par) { db.m_objcontext.ExecuteStoreCommand("DELETE ReColumnBrands WHERE ColumnID = " + id); foreach (ReColumnBrand item in Par) { db.ReColumnBrands.Add(item); } db.SaveChanges(); if (Request.IsAjaxRequest()) { string jsonStr = PubFunction.BuildResult("OK"); return(Content(jsonStr)); } else { return(View()); } }
public ActionResult Save(CustomOrder customOrder) { db.CustomOrders.Add(customOrder); db.SaveChanges(); if (Request.IsAjaxRequest()) { string jsonStr = PubFunction.BuildResult("OK"); return(Content(jsonStr)); } else { return(View()); } }
public void WriteTrail(HttpRequestBase request) { if (!request.RequestContext.HttpContext.User.Identity.IsAuthenticated) { return; } MyUser tmpUser = request.RequestContext.HttpContext.User as MyUser; if (request.RequestContext.RouteData.Route != null && tmpUser != null) { object tmpObj = request.RequestContext.RouteData.Route.GetRouteData(request.RequestContext.HttpContext).Values["controller"]; if (tmpObj == null || tmpObj.ToString() != "Product") { return; } tmpObj = request.RequestContext.RouteData.Route.GetRouteData(request.RequestContext.HttpContext).Values["action"]; if (tmpObj == null || tmpObj.ToString() != "Detail") { return; } } else { return; } RecentView tmpRV = new RecentView(); string tmpStr = request.Url.ToString(); int tmpI; if (int.TryParse(tmpStr.Substring(tmpStr.LastIndexOf('/') + 1), out tmpI)) { tmpRV.PID = tmpI; } else { return; } tmpRV.UID = tmpUser.UID; tmpRV.ViewDT = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); db.RecentViews.Add(tmpRV); db.SaveChanges(); }
public ActionResult Delete(int id) { int removeIndex = id; bool hasCookie = Request.Cookies.AllKeys.Contains("Order"); HttpCookie cookie = null; string tmpStr = ""; if (hasCookie) { cookie = Request.Cookies["Order"]; tmpStr = Server.UrlDecode(cookie.Value); Regex cookieRgx = new Regex(ProductController.ORDERCOOKIERGX); Match tmpMatch = cookieRgx.Match(tmpStr); if (!string.IsNullOrEmpty(tmpMatch.Value)) { Group gi = tmpMatch.Groups["ORDERID"]; int OrderID = int.Parse(gi.Value); Order order = db.Orders.FirstOrDefault(r => r.OID == OrderID); if (order != null && order.Packets != null && order.Packets.Count > removeIndex) { //删除 OrderPacket delOP = order.Packets[removeIndex]; db.OrderPackets.Remove(delOP); db.SaveChanges(); tmpStr = tmpStr.Substring(0, tmpMatch.Groups["PID"].Captures[removeIndex].Index) + tmpStr.Substring(tmpMatch.Groups["IMG"].Captures[removeIndex].Index + tmpMatch.Groups["IMG"].Captures[removeIndex].Length + 1); } else { hasCookie = false; } } else { //Cookie格式错误 hasCookie = false; } } if (!hasCookie && HttpContext.User.Identity.IsAuthenticated) { //禁用了cookie或者cookie格式错误 //从用户获得其订单 tmpStr = ""; MyUser myUser = HttpContext.User as MyUser; if (myUser != null) { Order order = db.Orders.OrderByDescending(r => r.OID).FirstOrDefault(r => r.UID == myUser.UID && r.Status == (int)Order.EOrderStatus.OS_Init); if (order != null && order.Packets != null && order.Packets.Count > removeIndex) { OrderPacket delOP = order.Packets[removeIndex]; db.OrderPackets.Remove(delOP); db.SaveChanges(); tmpStr = order.GetCoookieStr(); } //重新设置cookie cookie = new HttpCookie("Order"); cookie.Expires = DateTime.Now.AddMonths(1); } } cookie.Value = Server.UrlEncode(tmpStr); Response.Cookies.Add(cookie); if (Request.IsAjaxRequest()) { string jsonStr = PubFunction.BuildResult("OK"); return(Content(jsonStr)); } else { return(View()); } }
public void LoginSuccess(User user) { try { StringBuilder tmpRPStr = new StringBuilder("," + user.Permission + ","); StringBuilder tmpRIDStr = new StringBuilder(","); StringBuilder tmpRNStr = new StringBuilder(","); user.ReUserRoleLST = db.ReUserRoles.Where(r => r.UID == user.UID).ToList(); foreach (ReUserRole reur in user.ReUserRoleLST) { tmpRIDStr.Append(reur.Role.RID + ","); tmpRNStr.Append(reur.Role.RoleName + ","); tmpRPStr.Append(reur.Role.Permission + ","); } string tmpStr = string.Format("<USERID>{0}</USERID><USERNAME>{1}</USERNAME><RIDARR>{2}</RIDARR><RNARR>{3}</RNARR><PERMISSION>{4}</PERMISSION>", user.UID, user.UserName, tmpRIDStr.ToString(), tmpRNStr.ToString(), tmpRPStr.ToString()); FormsAuthenticationTicket authTicket = new FormsAuthenticationTicket( 1, user.UserName, DateTime.Now, DateTime.Now.AddMinutes(30), true, tmpStr); string encryptedTicket = FormsAuthentication.Encrypt(authTicket); //设置cookie(不能合在一起,奇怪) HttpCookie authCookie = new HttpCookie(FormsAuthentication.FormsCookieName, encryptedTicket); Response.Cookies.Add(authCookie); authCookie = new HttpCookie("UserInfo"); authCookie.Values.Add("UID", user.UID.ToString()); authCookie.Values.Add("UserName", user.UserName); authCookie.Values.Add("RID", tmpRIDStr.ToString()); authCookie.Values.Add("Permission", tmpRPStr.ToString()); authCookie.Expires = DateTime.Now.AddMinutes(30); Response.Cookies.Add(authCookie); ViewBag.LoginFail = 0; //把购物车的东西给予该用户 bool hasCookie = Request.Cookies.AllKeys.Contains("Order"); HttpCookie cookie = null; if (hasCookie) { hasCookie = false; cookie = Request.Cookies["Order"]; tmpStr = Server.UrlDecode(cookie.Value); Regex cookieRgx = new Regex(ProductController.ORDERCOOKIERGX); Match tmpMatch = cookieRgx.Match(tmpStr); if (!string.IsNullOrEmpty(tmpMatch.Value)) { Group gi = tmpMatch.Groups["ORDERID"]; int OrderID = int.Parse(gi.Value); Order order = db.Orders.FirstOrDefault(r => r.OID == OrderID); hasCookie = order != null && order.Packets.Count > 0; } } if (!hasCookie) { //从数据库里取出最后的未完成的购物任务 Order order = db.Orders.OrderByDescending(r => r.OID).FirstOrDefault(r => r.UID == user.UID && r.Status == (int)Order.EOrderStatus.OS_Init); if (order != null) { cookie = new HttpCookie("Order"); cookie.Expires = DateTime.Now.AddMonths(1); cookie.Value = Server.UrlEncode(order.GetCoookieStr()); Response.Cookies.Add(cookie); } } //处理收藏夹的东西 hasCookie = Request.Cookies.AllKeys.Contains("Keeps"); string KStr = ""; cookie = null; List <int> PIDArr = new List <int>(); if (hasCookie) { cookie = Request.Cookies["Keeps"]; tmpStr = Server.UrlDecode(cookie.Value); Regex cookieRgx = new Regex(KeepController.KEEPCOOKIERGX); MatchCollection tmpMC = cookieRgx.Matches(tmpStr); if (tmpMC.Count > 0) { foreach (Match tmpMatch in tmpMC) { if (!string.IsNullOrEmpty(tmpMatch.Value)) { Group gi = tmpMatch.Groups["PRODUCTID"]; int PID = -1; Keep inDBKeep = null; if (int.TryParse(gi.Value, out PID)) { inDBKeep = db.Keeps.FirstOrDefault(r => r.PID == PID && r.UID == user.UID); KStr += tmpMatch.Groups["PRODUCTID"] + "," + tmpMatch.Groups["TITLE"] + "," + tmpMatch.Groups["IMG"] + ","; if (inDBKeep != null) { PIDArr.Add(inDBKeep.PID); } else { Keep keep = new Keep(); keep.PID = PID; keep.UID = user.UID; keep.LastDate = DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss"); db.Keeps.Add(keep); } } } } db.SaveChanges(); } } else { cookie = new HttpCookie("Keeps"); cookie.Expires = DateTime.Now.AddMonths(1); } List <Keep> keepArr = db.Keeps.Where(r => r.UID == user.UID && !PIDArr.Contains(r.PID)).ToList(); //从数据库里取出该用户的收藏夹 foreach (Keep item in keepArr) { if (item.Product != null) { KStr += item.Product.PID + "," + item.Product.Title.Substring(0, Math.Min(20, item.Product.Title.Length)) + "," + item.Product.ImgPathArr[0] + ","; } } cookie.Value = Server.UrlEncode(KStr); Response.Cookies.Add(cookie); } catch (Exception ex) { } }
protected void Application_Start() { AreaRegistration.RegisterAllAreas(); //增加全局的Filter用于记录用户的Tracker GlobalFilters.Filters.Add(new UserTrackerLogAttribute()); WebApiConfig.Register(GlobalConfiguration.Configuration); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); //从文件加载省份,城市,区域到数据库 FCStoreDbContext db = new FCStoreDbContext(); if (db.Province.Count() == 0) { //省份不存在 string tmpFP = ConfigurationManager.AppSettings["PCTFilePath"]; tmpFP = Server.MapPath(tmpFP); FileInfo tmpFI = new FileInfo(tmpFP); if (tmpFI.Exists) { FileStream tmpFS = tmpFI.OpenRead(); int FLen = (int)tmpFI.Length; byte[] buffer = new byte[FLen]; //格式:<Province><PName>北京</PName><PPC>22</PPC><CityArr><City><CName>北京市</CName><CPC>44</CPC><TownArr><TName>南山区</TName><TPC>66</TCP></TownArr></City></CityArr></Province> if (tmpFS.Read(buffer, 0, FLen) > 0) { string tmpStr = Encoding.Unicode.GetString(buffer); string ProRgxStr = "<Province>\\s*?<PName>\\s*?(?<PName>\\w+?)\\s*?</PName>\\s*?<PPC>\\s*?(?<PPC>\\d+?)\\s*?</PPC>\\s*?<CityArr>\\s*?(?<PContent>.+?)\\s*?</CityArr>\\s*?</Province>"; Regex ProRgx = new Regex(ProRgxStr, RegexOptions.Singleline | RegexOptions.IgnoreCase); MatchCollection tmpMC = ProRgx.Matches(tmpStr); foreach (Match tmpMatch in tmpMC) { Province tmpPro = new Province(); tmpPro.Name = tmpMatch.Groups["PName"].Value; tmpPro.PostCode1 = tmpMatch.Groups["PPC"].Value; if (tmpPro.CityArr == null) { tmpPro.CityArr = new List <City>(); } string cityStr = tmpMatch.Groups["PContent"].Value; string CityRgxStr = "<City>\\s*?<CName>\\s*?(?<CName>\\w+?)\\s*?</CName>\\s*?<CPC>\\s*?(?<CPC>\\d+?)\\s*?</CPC>\\s*?<TownArr>\\s*?(?<CContent>.+?)\\s*?</TownArr>\\s*?</City>"; Regex cityRgx = new Regex(CityRgxStr, RegexOptions.Singleline | RegexOptions.IgnoreCase); MatchCollection tmpMC1 = cityRgx.Matches(cityStr); foreach (Match tmpMatch1 in tmpMC1) { City tmpCity = new City(); tmpCity.Name = tmpMatch1.Groups["CName"].Value; tmpCity.PostCode2 = tmpMatch1.Groups["CPC"].Value; if (tmpCity.TownArr == null) { tmpCity.TownArr = new List <Town>(); } string townStr = tmpMatch1.Groups["CContent"].Value; string TownRgxStr = "<Town>\\s*?<TName>\\s*?(?<TName>\\w+?)\\s*?</TName>\\s*?<TPC>\\s*?(?<TPC>\\d+?)\\s*?</TPC>\\s*?</Town>"; Regex townRgx = new Regex(TownRgxStr, RegexOptions.Singleline | RegexOptions.IgnoreCase); MatchCollection tmpMC2 = townRgx.Matches(townStr); foreach (Match tmpMatch2 in tmpMC2) { Town tmpTown = new Town(); tmpTown.Name = tmpMatch2.Groups["TName"].Value; tmpTown.PostCode3 = tmpMatch2.Groups["TPC"].Value; tmpCity.TownArr.Add(tmpTown); db.Town.Add(tmpTown); } tmpPro.CityArr.Add(tmpCity); db.City.Add(tmpCity); } db.Province.Add(tmpPro); } if (tmpMC.Count > 0) { db.SaveChanges(); } } tmpFS.Close(); } } db.Dispose(); //注册RouteDebug //RouteDebug.RouteDebugger.RewriteRoutesForTesting(RouteTable.Routes); }
public ActionResult Add(string id) { //保存到Cookie bool hasCookie = Request.Cookies.AllKeys.Contains("Keeps"); HttpCookie cookie = null; string tmpStr = ""; if (hasCookie) { cookie = Request.Cookies["Keeps"]; tmpStr = Server.UrlDecode(cookie.Value); } else { cookie = new HttpCookie("Keeps"); cookie.Expires = DateTime.Now.AddMonths(1); } string[] strArr = id.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries); foreach(string IDStr in strArr) { int PID = int.Parse(IDStr); Product product = db.Products.FirstOrDefault(r => r.PID == PID); if (product != null) { bool eTag = true; if (HttpContext.User.Identity.IsAuthenticated) { //已登录 MyUser tmpUser = HttpContext.User as MyUser; if (tmpUser != null) { //登陆用户 Keep exsisKeep = db.Keeps.FirstOrDefault(r => r.PID == PID && r.UID == tmpUser.UID); if (exsisKeep == null) { if(db.Keeps.Local.FirstOrDefault(r => r.PID == PID && r.UID == tmpUser.UID) == null) { Keep keep = new Keep(); keep.PID = PID; keep.UID = tmpUser.UID; keep.LastDate = DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss"); db.Keeps.Add(keep); eTag = false; } } else { exsisKeep.LastDate = DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss"); } } } else { eTag = false; Regex cookieRgx = new Regex(KEEPCOOKIERGX); Match tmpMatch = cookieRgx.Match(tmpStr); if (!string.IsNullOrEmpty(tmpMatch.Value)) { int tmpC = tmpMatch.Groups["KITEM"].Captures.Count; for (int i = 0; i < tmpC; i++) { if (int.Parse(tmpMatch.Groups["PRODUCTID"].Captures[i].Value) == PID) { eTag = true; break; } } } } if (!eTag) tmpStr += product.PID + "," + product.Title.Substring(0, Math.Min(20, product.Title.Length)) + "," + product.ImgPathArr[0] + ","; } } if (HttpContext.User.Identity.IsAuthenticated) db.SaveChanges(); cookie.Value = Server.UrlEncode(tmpStr); Response.Cookies.Add(cookie); if (Request.IsAjaxRequest()) { string jsonStr = PubFunction.BuildResult("OK"); return Content(jsonStr); } else { return View(); } }
public ActionResult Buy(int id, int count) { Product product = db.Products.First(r => r.PID == id); OrderPacket packet = new OrderPacket(); packet.PID = id; packet.Product = product; packet.Univalence = product.Price; packet.Discount = product.Discount; packet.Count = count; Order order = null; string tmpStr = ""; //添加到cookie里 bool hasCookie = Request.Cookies.AllKeys.Contains("Order"); HttpCookie cookie = null; if (hasCookie) { cookie = Request.Cookies["Order"]; tmpStr = Server.UrlDecode(cookie.Value); Regex cookieRgx = new Regex(ORDERCOOKIERGX); Match tmpMatch = cookieRgx.Match(tmpStr); if (!string.IsNullOrEmpty(tmpMatch.Value)) { Group gi = tmpMatch.Groups["ORDERID"]; int OrderID = int.Parse(gi.Value); order = db.Orders.FirstOrDefault(r => r.OID == OrderID); if (order != null) { if (order.Packets == null) { order.Packets = new List <OrderPacket>(); } //添加到数据库 order.Packets.Add(packet); db.OrderPackets.Add(packet); db.SaveChanges(); tmpStr += product.PID + "," + count.ToString() + "," + product.Title.Substring(0, Math.Min(20, product.Title.Length)) + "," + product.ImgPathArr[0] + ","; } else { order = new Order(); db.Orders.Add(order); order.Packets = new List <OrderPacket>(); order.UID = null; order.Postage = 0; order.Subscription = 0; order.Status = (int)Order.EOrderStatus.OS_Init; order.SendType = (int)Order.ESendType.ST_Direct; order.PayType = (int)Order.EPayType.PT_Alipay; order.OrderDate = null; order.CompleteDate = null; order.Packets.Add(packet); db.OrderPackets.Add(packet); db.SaveChanges(); tmpStr = order.OID + "," + product.PID + "," + count.ToString() + "," + product.Title.Substring(0, Math.Min(20, product.Title.Length)) + "," + product.ImgPathArr[0] + ","; } } else { hasCookie = false; } } if (!hasCookie) { cookie = new HttpCookie("Order"); cookie.Expires = DateTime.Now.AddMonths(1); order = new Order(); order.Packets = new List <OrderPacket>(); order.UID = null; order.Postage = 0; order.Subscription = 0; order.Status = (int)Order.EOrderStatus.OS_Init; order.SendType = (int)Order.ESendType.ST_Direct; order.PayType = (int)Order.EPayType.PT_Alipay; order.OrderDate = DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss"); order.CompleteDate = null; order.Packets.Add(packet); if (HttpContext.User.Identity.IsAuthenticated) { //已登录 MyUser tmpUser = HttpContext.User as MyUser; if (tmpUser != null) { //登陆用户 order.UID = tmpUser.UID; } } //添加到数据库 db.Orders.Add(order); db.OrderPackets.Add(packet); db.SaveChanges(); tmpStr = order.OID.ToString() + "," + product.PID + "," + count.ToString() + "," + product.Title.Substring(0, Math.Min(20, product.Title.Length)) + "," + product.ImgPathArr[0] + ","; } cookie.Value = Server.UrlEncode(tmpStr); Response.Cookies.Add(cookie); if (Request.IsAjaxRequest()) { string jsonStr = PubFunction.BuildResult("OK"); return(Content(jsonStr)); } else { return(View()); } }