Ext.Net.MVC.Examples.Areas.GridPanel_Update.Models.AutoSave.TestPerson.UpdatePerson C# (CSharp) Method

UpdatePerson() public static method

public static UpdatePerson ( TestPerson person ) : void
person TestPerson
return void
        public static void UpdatePerson(TestPerson person)
        {
            lock (lockObj)
            {
                if (person.Id % 2 != 0)
                {
                    throw new Exception("SIMULATED ERROR: ODD-numbered id");
                }

                var persons = TestPerson.Storage;
                TestPerson updatingPerson = null;

                foreach (TestPerson p in persons)
                {
                    if (p.Id == person.Id)
                    {
                        updatingPerson = p;
                        break;
                    }
                }

                if (updatingPerson == null)
                {
                    throw new Exception("TestPerson not found");
                }

                updatingPerson.Email = person.Email;
                updatingPerson.Last = person.Last;
                updatingPerson.First = person.First;

                TestPerson.Storage = persons;
            }
        }
    }