Esempio n. 1
0
        static void Main()
        {
            var service = new Service();
            var member = service.GetMember(3);

            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new FormMain());
        }
Esempio n. 2
0
        // saves data for new or edited member to database.
        
        protected void ButtonSave_Click(object sender, EventArgs e)
        {
            var service = new Service();

            var member  = (MemberId == 0) ? new BusinessObjects.Member() : service.GetMember(MemberId);

            // get email name from page

            var row = DetailsViewMember.Rows[1];
            var textBox = row.Cells[1].Controls[0] as TextBox;
            member.Email = textBox.Text.Trim();

            // get Company name from page.

            row = DetailsViewMember.Rows[2];
            textBox = row.Cells[1].Controls[0] as TextBox;
            member.CompanyName = textBox.Text.Trim();

            // get City from page

            row = DetailsViewMember.Rows[3];
            textBox = row.Cells[1].Controls[0] as TextBox;
            member.City = textBox.Text.Trim();

            // get Country from page

            row = DetailsViewMember.Rows[4];
            textBox = row.Cells[1].Controls[0] as TextBox;
            member.Country = textBox.Text.Trim();

            // validate using business rules engine

            if (member.IsValid())
            {
                if (MemberId == 0)
                {
                    service.InsertMember(member);
                    Session["message"] = "New member successfully added";
                }
                else
                {
                    service.UpdateMember(member);
                    Session["message"] = "Member successfully updated";
                }
            }
            else
            {
                LabelError.Text = member.Errors.Aggregate((current, next) => current + "</br>" + next);
                PanelError.Visible = true;
                return;
            }

            // return to list of members

            Response.Redirect(UrlMaker.ToMembers());
        }
Esempio n. 3
0
        // sets datasources and bind data to controls.
        
        private void Bind()
        {
            // get member 

            var service = new Service();
            var member = service.GetMember(MemberId);

            // set company name

            LabelHeader.Text = "<font color='black'>Orders for:</font> "
                + member.CompanyName + " (" + member.Country + ")";

            GridViewOrders.DataSource = service.GetOrdersByMember(MemberId);
            GridViewOrders.DataBind();
        }
Esempio n. 4
0
        // deletes member record
        
        protected void GridViewMembers_RowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            var row = GridViewMembers.Rows[e.RowIndex];
            int memberId = int.Parse(row.Cells[0].Text);

            var service = new Service();

            // member with orders cannot be deleted

            var orders = service.GetOrdersByMember(memberId);
            if (orders.Count > 0)
            {
                string memberName = row.Cells[1].Text;
                LabelError.Text = "Cannot delete " + memberName + " because they have existing orders!";
            }
            else
            {
                var member = service.GetMember(memberId);
                service.DeleteMember(member);
                Session["message"] = "Member successfully deleted";

                Bind();
            }
        }