Пример #1
0
    // 바이너리 데이터를 패킷 데이터로 디시리얼라이즈하기 위한 생성자.
    public SessionPacket(byte[] data)
    {
        SessionSerializer serializer = new SessionSerializer();

        serializer.SetDeserializedData(data);
        serializer.Deserialize(ref m_packet);
    }
Пример #2
0
        public IActionResult Order(UserViewModel uvm)
        {
            User user = GetCurrentUser();

            if (user == null)
            {
                return(Redirect("/Account/Logout"));
            }
            Store store = _ps.GetStore(uvm.StoreID);

            if (store == null)
            {
                return(Redirect("/Account/Logout"));
            }
            if (!AllowedToOrder(user, store))
            {
                List <Pizza> new_cart = SessionSerializer.FromJson <List <Pizza> >(HttpContext.Session, "Cart");
                return(View(new UserViewModel(_ps, user, new_cart)));
            }
            List <Pizza> cart = SessionSerializer.FromJson <List <Pizza> >(HttpContext.Session, "Cart");

            if (cart == null || cart.Count == 0 || cart.Count == 50)
            {
                return(View(new UserViewModel(_ps, user, cart)));
            }
            List <Pizza> real_pizzas = ConvertFakePizzas(cart);

            if (!_ps.PostOrder(user, store, real_pizzas))
            {
                return(View(new UserViewModel(_ps, user, cart)));
            }
            HttpContext.Session.Remove("Cart");
            return(Redirect("/User/Index"));
        }
Пример #3
0
    public byte[] GetData()
    {
        SessionSerializer serializer = new SessionSerializer();

        serializer.Serialize(m_packet);

        return(serializer.GetSerializedData());
    }
Пример #4
0
        public IActionResult History()
        {
            User user = GetCurrentUser();

            if (user == null)
            {
                return(Redirect("/Account/Logout"));
            }
            List <Pizza> cart = SessionSerializer.FromJson <List <Pizza> >(HttpContext.Session, "Cart");

            if (cart == null)
            {
                cart = new List <Pizza>();
            }
            return(View(new UserViewModel(_ps, user, cart)));
        }
Пример #5
0
        public IActionResult Cart(UserViewModel uvm)
        {
            Pizza pizza = _ps.GetPizzaFake(uvm.PizzaID);

            if (pizza != null)
            {
                List <Pizza> cart = SessionSerializer.FromJson <List <Pizza> >(HttpContext.Session, "Cart");
                if (cart == null)
                {
                    cart = new List <Pizza>();
                }
                cart.Add(pizza);
                SessionSerializer.ToJson(HttpContext.Session, "Cart", cart);
            }
            return(Redirect("/User/Order"));
        }
Пример #6
0
        public IActionResult Topping(PizzaViewModel pvm)
        {
            Topping topping = _ps.GetTopping(pvm.ToppingID);

            if (topping != null)
            {
                List <Topping> toppings = SessionSerializer.FromJson <List <Topping> >(HttpContext.Session, "Toppings");
                if (toppings == null)
                {
                    toppings = new List <Topping>();
                }
                toppings.Add(topping);
                SessionSerializer.ToJson(HttpContext.Session, "Toppings", toppings);
            }
            HttpContext.Session.SetString("CrustID", pvm.CrustID.ToString());
            HttpContext.Session.SetString("SizeID", pvm.SizeID.ToString());
            return(Redirect("/Pizza/Create"));
        }
        private void GetCurrentRecords(Action <IList <NotifyRecord> > action)
        {
            if (this.session == null)
            {
                return;
            }

            lock (this.session.Id)
            {
                var collection =
                    SessionSerializer.Deserialize <List <NotifyRecord> >(
                        this.session.GetString(NotificationMessagesSessionKey)) ??
                    new List <NotifyRecord>();

                action(collection);
                this.session.SetString(NotificationMessagesSessionKey, SessionSerializer.Serialize(collection));
            }
        }
Пример #8
0
        public IActionResult Create(PizzaViewModel pvm)
        {
            Crust          crust    = _ps.GetCrust(pvm.CrustID);
            Size           size     = _ps.GetSize(pvm.SizeID);
            List <Topping> toppings = SessionSerializer.FromJson <List <Topping> >(HttpContext.Session, "Toppings");

            if (crust != null && size != null && toppings != null && toppings.Count >= 2)
            {
                if (_ps.PostPizza(crust, size, toppings))
                {
                    HttpContext.Session.Remove("CrustID");
                    HttpContext.Session.Remove("SizeID");
                    HttpContext.Session.Remove("Toppings");
                    return(Redirect("/Store/Index"));
                }
            }
            HttpContext.Session.SetString("CrustID", pvm.CrustID.ToString());
            HttpContext.Session.SetString("SizeID", pvm.SizeID.ToString());
            return(View(pvm));
        }
 /// <summary>
 /// Request a direct payment session
 /// </summary>
 /// <param name="credentials">PagSeguro credentials</param>
 /// <returns><c cref="T:Uol.PagSeguro.CancelRequestResponse">Result</c></returns>
 public static Session CreateSession(Credentials credentials)
 {
     PagSeguroTrace.Info(String.Format(CultureInfo.InvariantCulture, "SessionService.Register() - begin"));
     try
     {
         using (HttpWebResponse response = HttpURLConnectionUtil.GetHttpPostConnection(
                    PagSeguroConfiguration.SessionUri.AbsoluteUri, BuildSessionURL(credentials)))
         {
             using (XmlReader reader = XmlReader.Create(response.GetResponseStream()))
             {
                 Session result = new Session();
                 SessionSerializer.Read(reader, result);
                 PagSeguroTrace.Info(String.Format(CultureInfo.InvariantCulture, "SessionService.Register({0}) - end", result.ToString()));
                 return(result);
             }
         }
     }
     catch (WebException exception)
     {
         PagSeguroServiceException pse = HttpURLConnectionUtil.CreatePagSeguroServiceException((HttpWebResponse)exception.Response);
         PagSeguroTrace.Error(String.Format(CultureInfo.InvariantCulture, "SessionService.Register() - error {0}", pse));
         throw pse;
     }
 }
Пример #10
0
        public IActionResult Create()
        {
            long   crust_id     = 0;
            string crust_string = HttpContext.Session.GetString("CrustID");

            if (crust_string == null)
            {
                long.TryParse(crust_string, out crust_id);
            }
            long   size_id     = 0;
            string size_string = HttpContext.Session.GetString("SizeID");

            if (size_string == null)
            {
                long.TryParse(size_string, out size_id);
            }
            List <Topping> toppings = SessionSerializer.FromJson <List <Topping> >(HttpContext.Session, "Toppings");

            if (toppings == null)
            {
                toppings = new List <Topping>();
            }
            return(View(new PizzaViewModel(_ps, crust_id, size_id, toppings)));
        }
Пример #11
0
        protected override byte[] SerializeSession(object sessionData)
        {
            NCacheSessionData session = sessionData as NCacheSessionData;

            return(SessionSerializer.Serialize(session));
        }
Пример #12
0
 protected override object DeserializeSession(byte[] buffer, int timeout)
 {
     return(SessionSerializer.Deserialize(buffer));
 }
Пример #13
0
 /// <summary>
 /// Deserialiert ein TreeNode aus einer Datei
 /// </summary>
 /// <param name="trv">Automatischer Parameter (Gerade aktive TreeView)</param>
 /// <param name="filename">Datei aus der gelesen werden soll</param>
 /// <returns>Ausgelesene TreeNode oder null</returns>
 public static TreeNode DeserializeTeamNode(this TreeView trv, string filename)
 {
     return(SessionSerializer.DeserializeTeamNode(filename));
 }
Пример #14
0
 /// <summary>
 /// Serialisiert eine angegebe TreeNode in eine Datei
 /// </summary>
 /// <param name="trv">Automatischer Parameter (Gerade aktive TreeView)</param>
 /// <param name="node">Die Node die serialisiert werden soll</param>
 /// <param name="filename">Datei in die geschrieben werden soll</param>
 public static void SerializeNode(this TreeView trv, TreeNode node, string filename)
 {
     SessionSerializer.SerializeNode(node, filename);
 }
Пример #15
0
        public IActionResult SessionCoulmns()
        {
            SessionSerializer ss = new SessionSerializer();

            return(Ok(GetColumns(ss)));
        }