Esempio n. 1
0
        /// <summary>
        /// 指定された条件に合致する<see cref="Person"/>を取得します。
        /// </summary>
        /// <param name="self">自分自身</param>
        /// <param name="predicate">抽出条件</param>
        /// <returns>絞込結果</returns>
        public static Persons Where(this Persons self, Func<Person, bool> predicate)
        {
            var result = new Persons();

            Output.WriteLine("========= WHERE ========");
            foreach (var aPerson in self)
            {
                if (predicate(aPerson))
                {
                    result.Add(aPerson);
                }
            }

            return result;
        }
Esempio n. 2
0
        void AddBio()
        {
            Persons?.Add(
                new AboutUsModel
            {
                FullName    = "Naveed Ahmad Hematmal",
                Role        = "Project Manager & Full Stack Developer",
                PhotoURL    = "NaveedAhmed.jpg",
                LinkedInURL = "https://linkedin.com/in/naveedahmadhematmal",
                TwitterURL  = "https://twitter.com/NaveedHematmal"
            }
                );

            Persons?.Add(
                new AboutUsModel
            {
                FullName    = "Saeeda Rasuly",
                Role        = "Program manager and UX designer",
                PhotoURL    = "SaeedaRasuly.jpg",
                LinkedInURL = "https://linkedin.com/in/saeeda-rasuly-377327169",
                TwitterURL  = "https://twitter.com/RasulySaeeda"
            }
                );

            Persons?.Add(
                new AboutUsModel
            {
                FullName    = "Mohammed Yasin Zahin",
                Role        = "Contents Developer and UX Designer",
                PhotoURL    = "MohammadYaseen.jpg",
                LinkedInURL = "https://linkedin.com/in/mohammad-yasin-zahin-95753517b",
                TwitterURL  = "https://twitter.com/YasinZahin4"
            }
                );

            Persons?.Add(
                new AboutUsModel
            {
                FullName    = "Abdul Basir Zafar",
                Role        = "Developer and UI Designer",
                PhotoURL    = "AbdulBasir.jpg",
                LinkedInURL = "https://linkedin.com/in/abdul-basir-zafar-271097193",
                TwitterURL  = "https://twitter.com/abBasirZafar"
            }
                );
        }
Esempio n. 3
0
        public static void SaveChanges(Person received)
        {
            bool found = false;

            for (int i = 0; i < Persons.Count; i++)
            {
                if (Persons[i].Identifier == received.Identifier)
                {
                    found      = true;
                    Persons[i] = received;
                    break;
                }
            }
            if (found == false)
            {
                Persons.Add(received);
            }

            PersonManage.SaveList(new List <Person>(Persons));
        }
        public bool LoadPersons(string filepath, FileFormatAccepted format)
        {
            List <Person> personsFromXml;
            IFileHelper   fileHelper = fileHelperFactory.GetFileHelper(format);

            if (!fileHelper.DeserializeFromFile <List <Person> >(filepath, out personsFromXml, deserializeRootAttribute))
            {
                return(false);
            }

            Persons.Clear();
            Participants.Clear();
            availableId.Clear();
            foreach (var person in personsFromXml)
            {
                Persons.Add(person);
            }

            return(true);
        }
Esempio n. 5
0
        public MainVM()
        {
            ShowPopupCommand = new RelayCommand(p => PopupVisible = !PopupVisible);

            for (int i = 0; i < 1000; i++)
            {
                Chöre.Add(new Chor {
                    Name = $"Chor {i}", HasChanges = false
                });
            }

            Random r = new Random();

            for (int i = 0; i < 10000; i++)
            {
                Persons.Add(new Person {
                    Name = $"Name {i}", Chor = Chöre[r.Next(0, 1000)], HasChanges = false
                });
            }
        }
Esempio n. 6
0
        public async Task LoadAsync()
        {
            var lookup = await _personLookupService.GetPersonLookupAsync();

            Persons.Clear();
            foreach (var item in lookup)
            {
                Persons.Add(new NavigationItemViewModel(item.Id, item.DisplayMember,
                                                        nameof(PersonDetailViewModel), _eventAggregator));
            }

            lookup = await _meetingLookupDataService.GetMeetingLookupAsync();

            Meetings.Clear();
            foreach (var item in lookup)
            {
                Meetings.Add(new NavigationItemViewModel(item.Id, item.DisplayMember,
                                                         nameof(MeetingDetailViewModel), _eventAggregator));
            }
        }
        public void Select(string command)
        {
            var selectCom = new SqlCommand(command, connection);
            var reader    = selectCom.ExecuteReader();

            Persons.Clear();

            while (reader.Read())
            {
                Persons.Add(new PersonModel()
                {
                    ForName = reader.GetString(1),
                    SurName = reader.GetString(2),
                    Gender  = reader.GetString(3),
                    Age     = reader.GetInt32(4),
                    ID      = reader.GetInt32(0)
                });
            }
            reader.Close();
        }
        // Добавим запись, если такой еще нет - Person
        public Person AddPerson(string name)
        {
            Person P = Persons.FirstOrDefault((p => p.Name == name));

            if (P == null)  // Имя не нашли
            {
                P = new Person(name);
                Persons.Add(P);
                SaveChanges();
            }
            else
            {
                if (!P.ActMk)
                {
                    P.ActMk = true;
                    SaveChanges();
                }
            }
            return(P);
        }
Esempio n. 9
0
        public MainWindow()
        {
            InitializeComponent();

            PersonItemsControl.ItemsSource = Persons;
            PersonListBox.ItemsSource      = Persons;
            PersonComboBox.ItemsSource     = Persons;

            Persons.Add(new Person("Robert", 29));
            Persons.Add(new Person("Conny", 34));
            Persons.Add(new Person("Martin", 35));

            Person DemoPerson = new Person("DemoPerson", 18)
            {
                FirstName = "Max",
                LastName  = "Mustermann"
            };

            DataContext = DemoPerson;
        }
Esempio n. 10
0
        private void CreateSomePersonsAndCountries()
        {
            string[] personNames     = new string[] { "James", "Adams", "Jill", "Mark" };
            string[] personCountries = new string[] { "USA", "India", "UK", "Denmark" };
            Person   newPerson       = null;

            for (int i = 0; i < personNames.Count(); i++)
            {
                newPerson = new Person
                {
                    FirstName = personNames[i],
                    Age       = 20 + i,
                    HomeTown  = ((char)(65 + i)).ToString(),
                    LastName  = "Anderson",
                    Addresses = new List <Address>()
                };

                AddAddresses(newPerson);
                Persons.Add(newPerson);
            }
        }
Esempio n. 11
0
        private void InitializeInvalidationTimer()
        {
            InvalidationTimer = new Timer()
            {
                AutoReset = true,
                Interval  = 5000,
                Enabled   = false
            };

            InvalidationTimer.Elapsed += (sender, e) =>
            {
                if (CurrentIndex > 2)
                {
                    return;
                }
                Persons.Add(AllPersons.ElementAt(CurrentIndex++));
                InvalidateChildren();
            };

            InvalidationTimer.Start();
        }
        private void LoadPersons(Module selectedModule)
        {
            using (var _context = new ApplicationContext())
            {
                Persons.Clear();
                if (selectedModule != null)
                {
                    List <Person> selectedPersons   = new List <Person>();
                    List <Person> unselectedPersons = new List <Person>();
                    selectedPersons = _context.Modules
                                      .FirstOrDefault(x => x.ID == selectedModule.ID).Students?
                                      .Select(x => x.Person)
                                      .OrderBy(x => x.SecondName)
                                      .ToList();

                    var temp = _context.Persons.ToList();
                    unselectedPersons = temp.Where(x => !selectedPersons.Any(y => x.ID == y.ID))
                                        .OrderBy(x => x.SecondName)
                                        .ToList();

                    foreach (var person in selectedPersons)
                    {
                        Persons.Add(new CheckedListItem <Person>(person, true));
                    }

                    foreach (var person in unselectedPersons)
                    {
                        Persons.Add(new CheckedListItem <Person>(person, false));
                    }
                }
                else
                {
                    var persons = _context.Persons.OrderBy(x => x.SecondName).ToList();
                    foreach (var person in persons)
                    {
                        Persons.Add(new CheckedListItem <Person>(person));
                    }
                }
            }
        }
Esempio n. 13
0
 public MainWindow()
 {
     InitializeComponent();
     //Ofening2.1 & 3.5:
     Persons.Add(new Person("fistname", "lastname", "C:\\Users\\Mohamed\\source\\repos\\Myfirstwpfapp\\Myfirstwpfapp\\images\\person.jpg", "images\\on.png"));
     Persons.Add(new Person("fistname1", "lastname1", "C:\\Users\\Mohamed\\source\\repos\\Myfirstwpfapp\\Myfirstwpfapp\\images\\person1.png", "images\\on.png"));
     Persons.Add(new Person("fistname2", "lastname2", "C:\\Users\\Mohamed\\source\\repos\\Myfirstwpfapp\\Myfirstwpfapp\\images\\person2.png", "images\\off.png"));
     Persons.Add(new Person("fistname3", "lastname3", "C:\\Users\\Mohamed\\source\\repos\\Myfirstwpfapp\\Myfirstwpfapp\\images\\person3.png", "images\\off.png"));
     Persons.Add(new Person("fistname4", "lastname4", "C:\\Users\\Mohamed\\source\\repos\\Myfirstwpfapp\\Myfirstwpfapp\\images\\person4.png", "images\\on.png"));
     //Ofening2.1:
     cmbpersons.ItemsSource = Persons;
     //Ofening3.5:
     lbPersons.ItemsSource = Persons;
     //Ofening3.7:
     using (var ctx = new NotitieContext())
     {
         Notities = ctx.Notities.ToList();
     }
     lvNotities.ItemsSource    = Notities.Where(n => n.Started == null && n.Done == null);
     lvNotitiesStr.ItemsSource = Notities.Where(n => n.Started != null && n.Done == null);
     lvNotitiesDne.ItemsSource = Notities.Where(n => n.Started != null && n.Done != null);
 }
Esempio n. 14
0
        /// <summary>
        /// Gets persons data from xml file
        /// </summary>
        private void GetPersonsFromXml()
        {
            Persons.Clear();
            XElement persons        = XElement.Load(ConstNames.XmlFileName);
            var      personElements = persons.Elements(ConstNames.XmlFileElementName);

            foreach (XElement person in personElements)
            {
                Persons.Add(new Person
                {
                    FirstName       = (string)person.Element(ConstNames.FirstName),
                    LastName        = (string)person.Element(ConstNames.LastName),
                    StreetName      = (string)person.Element(ConstNames.StreetName),
                    HouseNumber     = (string)person.Element(ConstNames.HouseNumber),
                    ApartmentNumber = (string)person.Element(ConstNames.ApartmentNumber),
                    PostalCode      = (string)person.Element(ConstNames.PostalCode),
                    PhoneNumber     = (string)person.Element(ConstNames.PhoneNumber),
                    DayOfBirth      = (string)person.Element(ConstNames.DayOfBirth),
                    Age             = (string)person.Element(ConstNames.Age),
                });
            }
        }
Esempio n. 15
0
 private void Add(object sender, RoutedEventArgs e)
 {
     if (Name.Text == "" || Surname.Text == "" || Age.Text == "")
     {
         MessageBox.Show("Заполните поля!", "Предупреждение", MessageBoxButton.OK, MessageBoxImage.Warning);
         return;
     }
     try
     {
         int age = Convert.ToInt32(Age.Text);
         Persons.Add(new Person {
             FirstName = Name.Text, Surname = Surname.Text, Age = Age.Text
         });
         Name.Text    = null;
         Surname.Text = null;
         Age.Text     = null;
     }
     catch (Exception)
     {
         MessageBox.Show("Правильно вводите данные!", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error);
     }
 }
        private void CommandBinding_ShowExecuted(object obj)
        {
            string hugeText = string.Empty;

            using (var reader = new StreamReader($@"{Directory.GetCurrentDirectory()}\Persons.txt"))
            {
                hugeText = reader.ReadToEnd();
            }
            foreach (var line in hugeText.Split(Environment.NewLine.ToCharArray()))
            {
                if (!string.IsNullOrEmpty(line))
                {
                    Person person = new Person();
                    person.Id         = int.Parse(line.Split('~')[0]);
                    person.Name       = line.Split('~')[1];
                    person.Department = line.Split('~')[2];
                    person.HiredDate  = DateTime.Parse(line.Split('~')[4]);
                    person.IsManager  = bool.Parse(line.Split('~')[3]);
                    Persons.Add(person);
                }
            }
        }
Esempio n. 17
0
        public RetirementReport(IPensionAgeCalc pensionAgeCalc, IIncomeTaxCalculator incomeTaxCalculator, Family family, DateTime now, DateTime?givenRetirementDate, IAssumptions assumptions, ITaxSystem taxSystem)
        {
            _family              = family;
            _assumptions         = assumptions;
            TimeToRetirement     = new DateAmount(DateTime.MinValue, DateTime.MinValue);
            TargetRetirementDate = givenRetirementDate;

            var spendingStepInputs = family.SpendingStepInputs.OrderBy(input => input.Date).ToList();

            for (int i = 0; i < spendingStepInputs.Count; i++)
            {
                var endDate = i < spendingStepInputs.Count - 1 ? spendingStepInputs[i + 1].Date : family.PrimaryPerson.Dob.AddYears(100);
                SpendingSteps.Add(new SpendingStepReport(spendingStepInputs[i].Date, endDate.AddDays(-1), spendingStepInputs[i].NewAmount));
            }

            var monthlySpending = MonthlySpendingAt(now) / family.Persons.Count;

            foreach (var person in family.Persons)
            {
                Persons.Add(new PersonReport(pensionAgeCalc, incomeTaxCalculator, person, now, givenRetirementDate, _assumptions, monthlySpending, taxSystem));
            }
        }
Esempio n. 18
0
        public void UsePaging()
        {
            Contacts.Clear();
            Persons.Clear();

            if (FilterEnabled)
            {
                var filterArray = _allContacts.Where(x =>
                                                     Convert.ToDateTime(x.From) >= DateIn && Convert.ToDateTime(x.To) <= DateOut &&
                                                     Convert.ToDateTime(x.To)
                                                     .Subtract(Convert.ToDateTime(x.From)).Minutes >
                                                     10).ToArray(); // Фильтр контактов больше 10 минут
                var result = Paging(10, filterArray);               // Итоговое отображение отфильтрованных данных
                foreach (var row in result)
                {
                    Contacts.Add(row);
                }
            }
            else
            {
                var contacts = Paging(10, _allContacts);
                foreach (var row in contacts)
                {
                    Contacts.Add(row);
                }
            }
            if (!Contacts.Any())
            {
                _backCommand.Execute(null);
                return;
            }

            var persons = Paging(10, _allPersons);

            foreach (var row in persons)
            {
                Persons.Add(row);
            }
        }
Esempio n. 19
0
        public void Init()
        {
            var persons = _repoPerson.Query();

            if (null != persons && persons.Count > 0)
            {
                foreach (var item in persons)
                {
                    Persons.Add(item);
                }
            }

            var books = _repoBook.Query();

            if (null != books && books.Count > 0)
            {
                foreach (var item in books)
                {
                    Books.Add(item);
                }
            }
        }
Esempio n. 20
0
        public void Load()
        {
            GetLocalAdminsistrators(Server);

            foreach (string[] admin in LocalAdmins)
            {
                string account = admin[(int)DC.SAM_ACCOUNT];
                string type    = admin[(int)DC.OBJECT_TYPE];

                if (type == "localuser" || type == "localgroup")
                {
                    Persons.Add(admin);
                }
                else if (type == "aduser")
                {
                    LoadAdUserDetails(account, Server);
                }
                else if (type == "adgroup")
                {
                    LoadAdGroupMemberDetails(account);
                }
            }

            for (int i = 0; i < AdGroups.Count; i++) /* loop to get all leaf person members of parent group */
            {
                LoadAdGroupMemberDetails(AdGroups[i]);
                AdGroups.RemoveAt(i);
            }

            Results.BeginLoadData();

            foreach (string[] person in Persons)
            {
                Results.LoadDataRow(person, true);
            }

            Results.EndLoadData();
        }
Esempio n. 21
0
        public String add(String uuid)
        {
            IPerson person = (IPerson)HttpContext.Current.Cache[uuid];

            if (person != null)
            {
                Cart.Person cartPerson = new Cart.Person(person);
                if (exists(uuid))
                {
                    return(String.Format("{0} {1}", cartPerson, Messages.cart_exists));
                }
                else
                {
                    Persons.Add(cartPerson);
                    return(String.Format("{0} {1}", cartPerson, Messages.cart_added));
                }
            }
            else
            {
                cpreader.Logger.info("problem adding " + uuid);
                return("");
            }
        }
Esempio n. 22
0
        private void OnXmlGenerate(object sender, System.Windows.RoutedEventArgs e)
        {
            NodeCollection childs = new Persons("Vinayaka");

            childs.Initialize();
            childs.Add(new Person()
            {
                Name = "Son of ----"
            });
            PersonsInfo info = new PersonsInfo();

            info.Persons.Add(childs);
            Stream stream = null;

            using (stream = File.Open("sample.xml", FileMode.Create))
            {
                TextWriter    writer     = new StreamWriter(stream);
                XmlSerializer serializer = new XmlSerializer(typeof(PersonsInfo));
                serializer.Serialize(writer, info);
                writer.Close();
                Output.Content = "File Created";
            }
        }
Esempio n. 23
0
 public MyProgram(bool Generate, int cadastralCount, int personsCount, int propertyListCount, int propertyCount) : this()
 {
     if (Generate)
     {
         Random personsR = new Random(100);
         Random cadR     = new Random(101);
         for (int i = 0; i < personsCount; i++)
         {
             Persons.Add(new Person(personsR.Next(personsCount * 10).ToString()));
         }
         CadastralArea c  = null;
         PropertyList  pl = null;
         Property      p  = null;
         for (int i = 0; i < cadastralCount; i++)
         {
             c = new CadastralArea(cadR.Next(cadastralCount + 10));
             if (CadastralAreasByID.Add(new CadastralAreaByID(c)))
             {
                 CadastralAreasByName.Add(new CadastralAreaByName(c));
                 for (int j = 1; j <= propertyListCount; j++)
                 {
                     pl = new PropertyList(j, c);
                     if (c.AddPropertyList(pl))
                     {
                         pl.AddOwner(Persons.Find(), 1);
                         for (int k = 0; k < propertyCount; k++)
                         {
                             p = new Property(c.Properties.Count, "Address" + (j + k), "Unknown", pl);
                             p.AddOccupant(pl.Owners.GetRoot().Person);
                             pl.AddProperty(p);
                         }
                     }
                 }
             }
         }
     }
 }
Esempio n. 24
0
        /// <summary>
        /// Executes initialization and loading
        /// of entities on scenario
        /// </summary>
        public void InitializeEntities()
        {
            //Create a person and add to list
            var john = new Person
            {
                Id      = Persons.Count + 1,
                IsMale  = true,
                Name    = "John",
                Surname = "Doe"
            };

            Persons.Add(john);

            //Create few departments
            var fin = new Department
            {
                Id   = Guid.NewGuid().ToString("D"),
                Code = "FIN",
                Name = "Finance"
            };
            var rd = new Department
            {
                Id   = Guid.NewGuid().ToString("D"),
                Code = "R&D",
                Name = "Research and Development"
            };
            var hr = new Department
            {
                Id   = Guid.NewGuid().ToString("D"),
                Code = "HR",
                Name = "Human Resources"
            };

            //...and use "Push" extension method for push and create
            //auto-magically primary Id if they are missing
            this.Push(s => s.Departments, fin, rd, hr);
        }
Esempio n. 25
0
        public void AddNewPersonWithRelation(Person person, Person child, RelationType relationType)
        {
            using (var context = new DataContext())
            {
                if (Persons.FirstOrDefault(p => p == child) == null)
                {
                    Persons.Add(child);
                    var dalPerson = child.ConvertToDalPerson();
                    context.AddPerson(dalPerson);
                    child.Id = dalPerson.Id;
                }

                var personToChild = new Relation
                {
                    SourcePerson      = person,
                    DestinationPerson = child,
                    RelationType      = relationType
                };
                var childToPerson = personToChild.GetReverseRelation();

                if (Relations.FirstOrDefault(r => r == personToChild) == null)
                {
                    Relations.Add(personToChild);
                    var dalRelation = personToChild.ConvertToDalRelation();
                    context.AddRelation(dalRelation);
                    personToChild.RelationId = dalRelation.RelationId;
                }

                if (Relations.FirstOrDefault(r => r == childToPerson) == null)
                {
                    Relations.Add(childToPerson);
                    var dalRelation = childToPerson.ConvertToDalRelation();
                    context.AddRelation(dalRelation);
                    childToPerson.RelationId = dalRelation.RelationId;
                }
            }
        }
Esempio n. 26
0
 private void CreateSampleData()
 {
     Persons.Add(new Person()
     {
         Lastname = "Jan", Firstname = "Valentýn", DateOfBirth = new DateTime(1980 + 20, 1, 1)
     });
     Persons.Add(new Person()
     {
         Lastname = "Benedikt", Firstname = "Vojtěch", DateOfBirth = new DateTime(1980 + 11, 1, 1)
     });
     Persons.Add(new Person()
     {
         Lastname = "Vern", Firstname = "Argento", DateOfBirth = new DateTime(1980 + 13, 1, 1)
     });
     Persons.Add(new Person()
     {
         Lastname = "Caroline", Firstname = "Erben", DateOfBirth = new DateTime(1980 + 5, 1, 1)
     });
     Persons.Add(new Person()
     {
         Lastname = "Elton", Firstname = "Saas", DateOfBirth = new DateTime(1980 + 20, 1, 1)
     });
     // for (int i = 0; i < 10; i++) persons.Add(new Person() { Lastname = "Jméno" + i, Firstname = "Přijmení" + i, DateOfBirth = new DateTime(1980+i,1,1) });
 }
Esempio n. 27
0
 public bool InsertSingleRow(Person person, Address address, FinancialState financial, Agreement agreement)
 {
     using (var dbContextTransaction = Database.BeginTransaction())
     {
         try
         {
             Addresses.Add(address);
             FinancialStates.Add(financial);
             person.Address = address;
             Persons.Add(person);
             agreement.FinancialState = financial;
             agreement.Person         = person;
             Agreements.Add(agreement);
             dbContextTransaction.Commit();
             SaveChanges();
             return(true);
         }
         catch (Exception)
         {
             dbContextTransaction.Rollback();
             return(false);
         }
     }
 }
Esempio n. 28
0
        private void LoadAdUserDetails(string account, string parent)
        {
            string[] properties = new string[7];

            using (DirectorySearcher searcher = new DirectorySearcher())
            {
                searcher.PropertiesToLoad.AddRange(new string[] { "objectSid", "sAMAccountName", "distinguishedName" });
                searcher.Filter = string.Format("(&(ObjectClass=Person)(sAMAccountName={0}))", account);

                using (DirectoryEntry dEntry = searcher.FindOne().GetDirectoryEntry())
                {
                    string type = dEntry.InvokeGet("class").ToString();

                    if (type.ToLower() == "user")
                    {
                        properties[(int)DC.OBJECT_TYPE] = "aduser";
                    }
                    else
                    {
                        return;
                    }

                    int  userFlags = (int)dEntry.Properties["userAccountControl"].Value;
                    bool disabled  = Convert.ToBoolean(userFlags & 0x0002);

                    properties[(int)DC.SERVER]             = Server;
                    properties[(int)DC.OBJECT_SID]         = new SecurityIdentifier((byte[])dEntry.Properties["objectSid"].Value, 0).ToString();
                    properties[(int)DC.SAM_ACCOUNT]        = dEntry.Properties["sAMAccountName"].Value.ToString();
                    properties[(int)DC.DISTINGUISHED_NAME] = dEntry.Properties["distinguishedName"].Value.ToString();
                    properties[(int)DC.STATUS]             = disabled ? "disabled" : "enabled";
                    properties[(int)DC.SOURCE]             = parent;
                }
            }

            Persons.Add(properties);
        }
Esempio n. 29
0
        public void AddFromConsole()
        {
            try
            {
                string s = "";
                Console.WriteLine("Введите: Имя и фамилю автора, название документа;  разделитель - пробел");
                s = Console.ReadLine();
                String[] split = s.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);

                Person per = new Person();
                per.Name    = split[0];
                per.Surname = split[1];
                Persons.Add(per);

                Paper pap = new Paper();
                pap.Autor             = per;
                pap.NameOfPublication = split[2];
                Papers.Add(pap);
            }
            catch (Exception)
            {
                this.AddFromConsole();
            }
        }
        static void Main(string[] args)
        {
            //create your objects

            Person p = new Person();

            p.Age  = 35;
            p.Name = "Arnold";

            Person p2 = new Person();

            p2.Age  = 36;
            p2.Name = "Tom";

            Persons ps = new Persons();

            ps.Add(p);
            ps.Add(p2);

            //Serialize them to XML

            XmlSerializer xs = new XmlSerializer(typeof(Persons));

            XDocument d = new XDocument();

            using (XmlWriter xw = d.CreateWriter())
                xs.Serialize(xw, ps);

            //print xml
            //System.Diagnostics.Debug.WriteLine(d.ToString());

            // it will produce following xml. You can save it to file.
            //I have saved it to variable xml for demo



            string xml = @"<ArrayOfPerson>
                          <Person>
                            <Age>35</Age>
                            <Name>Arnold</Name>
                            <XMLLine>0</XMLLine>
                         </Person> 
                         <Person>
                           <Age>36</Age>
                           <Name>Tom</Name>
                           <XMLLine>0</XMLLine>
                          </Person>
                        </ArrayOfPerson>";



            XDocument xdoc = XDocument.Parse(xml, LoadOptions.SetLineInfo);

            // A little trick to get xml line
            xdoc.Descendants("Person").All(a => { a.SetElementValue("XMLLine", ((IXmlLineInfo)a).HasLineInfo() ? ((IXmlLineInfo)a).LineNumber : -1); return(true); });


            //deserialize back to object

            Persons pplz = xs.Deserialize((xdoc.CreateReader())) as Persons;

            pplz.All(a => { Console.WriteLine(string.Format("Name {0} ,Age{1} ,Line number of object in XML File {2}", a.Name, a.Age, a.XMLLine)); return(true); });

            Console.ReadLine();
        }
Esempio n. 31
0
 public Family(Person personStatuses, IEnumerable <SpendingStep> spendingStepInputs)
 {
     SpendingStepInputs = spendingStepInputs;
     Persons.Add(personStatuses);
 }