예제 #1
0
        public static NLog.Logger logger = NLog.LogManager.GetCurrentClassLogger();     //logger.Info(e.Message);
        static void Main(string[] args)
        {
            PersonSqlDbAccess.Add(
                new Models.Person.PersonModel
            {
                Firstname = "Mike",
                Lastname  = "Corso",
                Age       = 32,
                Gender    = "Male",
                Address   = new Models.Person.AddressModel
                {
                    AddrLine1  = "32 West 32nd St",
                    AddrLine2  = "Room 218",
                    City       = "New York",
                    State      = "New York",
                    FK_Country = 1,
                    Zipcode    = "10003"
                },
                ContactInfo = new Models.Person.ContactInfoModel
                {
                    Number = "1234567890",
                    Ext    = "",
                    Email  = "*****@*****.**"
                }
            }
                );

            Console.ReadLine();
        }
예제 #2
0
 public IHttpActionResult Delete(Guid Id)
 {
     try
     {
         PersonSqlDbAccess.Delete(Id);
         logger.Info($"PersonController.Delete successfully deleted pid {Id}");
         return(Ok());
     }
     catch (Exception ex)
     {
         logger.Info($"PersonController.Delete threw error {ex.Message} trying to delete {Id}");
         return(BadRequest());
     }
 }
예제 #3
0
        public IHttpActionResult Post(PersonModel p)
        {
            if (p != null)
            {
                try
                {
                    // Convert ISO2 to CountryModel objects
                    p.Address.FK_Country = Guid.Empty;
                    if (p.Address.CountryISO2 != null)
                    {
                        p.Address.FK_Country = CountrySqlDbAccess.GetByISO2(p.Address.CountryISO2).Id;
                    }
                    p.ContactInfo.FK_Country = Guid.Empty;
                    if (p.Address.CountryISO2 != null)
                    {
                        p.ContactInfo.FK_Country = CountrySqlDbAccess.GetByISO2(p.ContactInfo.CountryISO2).Id;
                    }
                    // Create new Guid for Person, Address, ContactInfo
                    p.Id = p.Address.Id = p.ContactInfo.Id = Guid.NewGuid();

                    PersonSqlDbAccess.Add(p);
                    logger.Info($"PersonController.Post successfully added {p.Print()}");
                    return(Ok());
                }
                catch (Exception ex)
                {
                    logger.Info($"PersonController.Post threw error {ex.Message} trying to add {p.Print()}");
                    return(BadRequest());
                }
            }
            else
            {
                logger.Info($"PersonController.Post failed to add {p.Print()}");
                return(BadRequest());
            }
        }
예제 #4
0
        public IHttpActionResult Put(Guid Id, [FromBody] PersonModel p)
        {
            if (p != null)
            {
                try
                {
                    PersonModel original = PersonSqlDbAccess.GetPersonById(Id);

                    if (p.Firstname != null)
                    {
                        original.Firstname = p.Firstname;
                    }
                    if (p.Lastname != null)
                    {
                        original.Lastname = p.Lastname;
                    }
                    if (p.Age != null)
                    {
                        original.Age = p.Age;
                    }
                    if (p.Gender != null)
                    {
                        original.Gender = p.Gender;
                    }

                    if (p.Address.AddrLine1 != null)
                    {
                        original.Address.AddrLine1 = p.Address.AddrLine1;
                    }
                    if (p.Address.AddrLine2 != null)
                    {
                        original.Address.AddrLine2 = p.Address.AddrLine2;
                    }
                    if (p.Address.City != null)
                    {
                        original.Address.City = p.Address.City;
                    }
                    if (p.Address.State != null)
                    {
                        original.Address.State = p.Address.State;
                    }
                    if (p.Address.CountryISO2 != null)
                    {
                        original.Address.FK_Country = CountrySqlDbAccess.GetByISO2(p.Address.CountryISO2).Id;
                    }
                    if (p.Address.Zipcode != null)
                    {
                        original.Address.Zipcode = p.Address.Zipcode;
                    }

                    if (p.ContactInfo.CountryISO2 != null)
                    {
                        original.ContactInfo.FK_Country = CountrySqlDbAccess.GetByISO2(p.ContactInfo.CountryISO2).Id;
                    }
                    if (p.ContactInfo.Number != null)
                    {
                        original.ContactInfo.Number = p.ContactInfo.Number;
                    }
                    if (p.ContactInfo.Ext != null)
                    {
                        original.ContactInfo.Ext = p.ContactInfo.Ext;
                    }
                    if (p.ContactInfo.Email != null)
                    {
                        original.ContactInfo.Email = p.ContactInfo.Email;
                    }

                    PersonSqlDbAccess.Update(original);
                    logger.Info($"PersonController.Put successfully edited {p.Print()}");
                    return(Ok());
                }
                catch (Exception ex)
                {
                    logger.Info($"PersonController.Put threw error {ex.Message} trying to edit {p.Print()}");
                    return(BadRequest());
                }
            }
            else
            {
                logger.Info($"PersonController.Put failed to edit {p.Print()}");
                return(BadRequest());
            }
        }
예제 #5
0
 public JsonResult <PersonModel> Get(Guid Id)
 {
     return(Json <PersonModel>(PersonSqlDbAccess.GetPersonById(Id)));
 }
예제 #6
0
 public JsonResult <IEnumerable <PersonModel> > Get()
 {
     return(Json <IEnumerable <PersonModel> >(PersonSqlDbAccess.GetAll()));
 }
        public void Test_PersonSqlDbCRUD()
        {
            Guid[] guids = new Guid[] { new Guid("F7AB131E-354C-4698-A673-BB27D0D0D64F"),
                                        new Guid("92115905-9A48-4A17-9521-E35560F74674") };

            /* Create */

            // DB before changes
            List <PersonModel> before = PersonSqlDbAccess.GetAll();

            // Changes
            PersonSqlDbAccess.Add(
                new Models.Person.PersonModel
            {
                Id        = guids[0],
                Firstname = "Mike",
                Lastname  = "Corso",
                Age       = 32,
                Gender    = "Male",
                Address   = new Models.Person.AddressModel
                {
                    Id         = Guid.NewGuid(),
                    AddrLine1  = "32 West 32nd St",
                    AddrLine2  = "Room 218",
                    City       = "New York",
                    State      = "New York",
                    FK_Country = new Guid("DC9E0EF0-EC74-4E4D-A7DA-00754C3D2616"),
                    Zipcode    = "10003"
                },
                ContactInfo = new Models.Person.ContactInfoModel
                {
                    Id         = Guid.NewGuid(),
                    FK_Country = new Guid("DC9E0EF0-EC74-4E4D-A7DA-00754C3D2616"),
                    Number     = "1234567890",
                    Ext        = "",
                    Email      = "*****@*****.**"
                }
            }
                );
            PersonSqlDbAccess.Add(
                new Models.Person.PersonModel
            {
                Id        = guids[1],
                Firstname = "Samantha",
                Lastname  = "Corso",
                Age       = 25,
                Gender    = "Female",
                Address   = new Models.Person.AddressModel
                {
                    Id         = Guid.NewGuid(),
                    AddrLine1  = "31 West 32nd St",
                    AddrLine2  = "Room 217",
                    City       = "New York",
                    State      = "New York",
                    FK_Country = new Guid("DC9E0EF0-EC74-4E4D-A7DA-00754C3D2616"),
                    Zipcode    = "10004"
                },
                ContactInfo = new Models.Person.ContactInfoModel
                {
                    Id         = Guid.NewGuid(),
                    FK_Country = new Guid("DC9E0EF0-EC74-4E4D-A7DA-00754C3D2616"),
                    Number     = "349667890",
                    Ext        = "",
                    Email      = "*****@*****.**"
                }
            }
                );
            // DB after changes
            List <PersonModel> after = PersonSqlDbAccess.GetAll();

            // Assert
            Assert.True(after.Count - before.Count == 2);

            /* Update */

            // DB before changes
            before = PersonSqlDbAccess.Search("John");
            // Changes
            PersonSqlDbAccess.Update(
                new Models.Person.PersonModel
            {
                Id        = guids[0],
                Firstname = "John",
                Lastname  = "Corso",
                Age       = 32,
                Gender    = "Male",
                Address   = new Models.Person.AddressModel
                {
                    Id         = Guid.NewGuid(),
                    AddrLine1  = "32 West 32nd St",
                    AddrLine2  = "Room 218",
                    City       = "New York",
                    State      = "New York",
                    FK_Country = new Guid("DC9E0EF0-EC74-4E4D-A7DA-00754C3D2616"),
                    Zipcode    = "10003"
                },
                ContactInfo = new Models.Person.ContactInfoModel
                {
                    Id         = Guid.NewGuid(),
                    FK_Country = new Guid("DC9E0EF0-EC74-4E4D-A7DA-00754C3D2616"),
                    Number     = "1234567890",
                    Ext        = "",
                    Email      = "*****@*****.**"
                }
            }
                );
            // After changes
            after = PersonSqlDbAccess.Search("John");
            // Assert
            Assert.True(after.Count - before.Count == 1);

            /* Delete */

            // Changes
            PersonSqlDbAccess.Delete(guids[0]);
            PersonSqlDbAccess.Delete(guids[1]);
            // Assert
            Assert.True(PersonSqlDbAccess.GetPersonById(guids[0]) == null);
            Assert.True(PersonSqlDbAccess.GetPersonById(guids[1]) == null);
        }
        public void Test_MessageSqlDbCRUD()
        {
            Guid[] guids = new Guid[] { new Guid("F7AB131E-354C-4698-A673-BB27D0D0D64F"),
                                        new Guid("92115905-9A48-4A17-9521-E35560F74674") };

            /* Create */

            // DB before changes
            List <MessageModel> before = MessageSqlDbAccess.GetAll();

            // Changes
            MessageSqlDbAccess.Add(
                new Models.ContactMe.MessageModel
            {
                Id       = guids[0],
                WasRead  = false,
                FullName = "Michael Corso",
                Email    = "*****@*****.**",
                Message  = "This is a test message."
            }
                );

            // DB after changes
            List <MessageModel> after = MessageSqlDbAccess.GetAll();

            // Assert
            Assert.True(after.Count - before.Count == 1);

            /* Update */

            // DB before changes
            before = MessageSqlDbAccess.Search("John Corso");
            foreach (MessageModel m in before)
            {
                output.WriteLine(m.Print());
            }
            // Changes
            MessageSqlDbAccess.Update(
                new Models.ContactMe.MessageModel
            {
                Id       = guids[0],
                WasRead  = true,
                FullName = "John Corso",
                Email    = "*****@*****.**",
                Message  = "This is a test message."
            }
                );
            // After changes
            after = MessageSqlDbAccess.Search("John Corso");
            foreach (MessageModel m in after)
            {
                output.WriteLine(m.Print());
            }
            // Assert
            Assert.True(after.Count - before.Count == 1);

            /* Delete */

            // Changes
            PersonSqlDbAccess.Delete(guids[0]);
            //PersonSqlDbAccess.Delete(guids[1]);
            // Assert
            Assert.True(PersonSqlDbAccess.GetPersonById(guids[0]) == null);
            //Assert.True(PersonSqlDbAccess.GetPersonById(guids[1]) == null);
        }