Example #1
0
        protected void ReviewsListView_OnDataBound(object sender, EventArgs e)
        {
            var pager = (DataPager)ReviewsListView.FindControl("DataPager1");

            pager.Visible = pager.PageSize < pager.TotalRowCount;
        }
Example #2
0
        // The id parameter name should match the DataKeyNames value set on the control

        /*   public void PremisesListView_DeleteItem(string Id)
         * {
         *     premises.Remove(premises.Single(b => b.premise_id == Id));
         * }
         *
         * public void EmployeesListView_DeleteItem(string Id)
         * {
         *     employees.Remove(employees.Single(b => b.employee_id == Id));
         * }
         *
         * public void ReviewsListView_DeleteItem(string Id)
         * {
         *     reviews.Remove(reviews.Single(b => b.review_id == Id));
         * }
         *
         * public void OffersListView_DeleteItem(string Id)
         * {
         *     offers.Remove(offers.Single(b => b.offer_id == Id));
         * }
         */



        protected void SubmitButton_Click(object sender, EventArgs e)
        {
            // До срещане на грешка се предполага, че всичко е наред.
            DbStatusLabel.Text      = "Успешно записване в БД.";
            DbStatusLabel.ForeColor = Color.Green;

            XmlStatusLabel.Text      = "Успешно записване в XML файл.";
            XmlStatusLabel.ForeColor = Color.Green;

            HotelsModels.Hotel hotel = null;

            try
            {
                hotel = ControlsToModel();
                context.Hotels.Add(hotel);
                context.SaveChanges();
            }
            catch (Exception ex)
            {
                DbStatusLabel.Text      = "Грешка при записване в БД: " + ex.Message;
                DbStatusLabel.ForeColor = Color.Red;
                hotel = null;
            }

            try
            {
                if (hotel == null)
                {
                    throw new Exception("Не се записва XML файл при грешка в записването в БД");
                }
                XDocument hotelXml = ModelToXml(hotel);
                hotelXml.Save(Server.MapPath("~/App_Data/" + hotel.name + hotel.id + ".xml"));
            }
            catch (Exception ex)
            {
                XmlStatusLabel.Text      = "Грешка при записване в XML файл: " + ex.Message;
                XmlStatusLabel.ForeColor = Color.Red;

                hotel = null;
            }

            if (hotel != null)
            {
                // При успешно записване се изчистват всички данни в контролите
                foreach (Control control in Master.FindControl("ContentPlaceHolder1").Controls)
                {
                    if (control is TextBox)
                    {
                        (control as TextBox).Text = "";
                    }
                }

                // Изчистване на запазените списъци в ViewState и обновяване на ListView
                premises = new List <HotelsModels.Premise>();
                ViewState["premises"] = premises;
                PremisesListView.DataBind();


                offers = new List <HotelsModels.Offer>();
                ViewState["offers"] = offers;
                OffersListView.DataBind();

                employees = new List <HotelsModels.Employee>();
                ViewState["employees"] = employees;
                EmployeesListView.DataBind();

                reviews = new List <HotelsModels.Review>();
                ViewState["reviews"] = reviews;
                ReviewsListView.DataBind();
            }
        }