Пример #1
0
    protected void btnApplyAllChanges_Click(object sender, EventArgs e)
    {
        //Create product list from json posted from client
        List <store> stores         = new List <store>();
        var          storesJon      = Server_Data1.Text;
        dynamic      storesResponse = JsonConvert.DeserializeObject(storesJon);

        if (storesResponse != null)
        {
            List <object> storeObjects = storesResponse.ToObject <List <object> >();
            foreach (var obj in storeObjects)
            {
                store item = new store();

                int store_id = -1;
                Int32.TryParse(Helper.GetPropValue(obj + "", "store_id") + "", out store_id);
                item.store_id = store_id;

                item.store_name = Helper.GetPropValue(obj + "", "store_name") + "";
                item.phone      = Helper.GetPropValue(obj + "", "phone") + "";
                item.email      = Helper.GetPropValue(obj + "", "email") + "";
                item.street     = Helper.GetPropValue(obj + "", "street") + "";
                item.city       = Helper.GetPropValue(obj + "", "city") + "";
                item.zip_code   = Helper.GetPropValue(obj + "", "zip_code") + "";

                stores.Add(item);
            }
        }

        //Delete records from product
        //Get product ids from json posted from client
        var     deletedIdsJson     = txtDeletedIds.Text;
        dynamic deletedIdsResponse = JsonConvert.DeserializeObject(deletedIdsJson);

        if (deletedIdsResponse != null)
        {
            List <int> deletedIds = deletedIdsResponse.ToObject <List <int> >();

            if (deletedIds.Count > 0)
            {
                foreach (var id in deletedIds)
                {
                    var found = stores.Find(x => x.store_id == id);
                    if (found != null)
                    {
                        stores.Remove(found);
                    }
                }
                StoreHelper.DeleteStoreByIds(deletedIds);
            }
        }

        StoreHelper.Updatestores(stores);
        PushDataToClient();
    }