static void Main(string[] args) { List <Runway> runwaysRynair = new List <Runway>(); runwaysRynair.Add(new Runway(1000)); runwaysRynair.Add(new Runway(2000)); runwaysRynair.Add(new Runway(3000)); List <Runway> runwaysLOT = new List <Runway>(); runwaysLOT.Add(new Runway(1000)); runwaysLOT.Add(new Runway(2000)); runwaysLOT.Add(new Runway(3000)); List <Airport> lst = new List <Airport>(); lst.Add(new Airport("Rynair", runwaysRynair)); lst.Add(new Airport("LOT Polish Airlines", runwaysLOT)); Serializer1 serializer = new Serializer1(); serializer.SerializeXML(lst, "serxml.xml"); serializer.SerializeJSON(lst, "serjson.txt"); serializer.SerializeByLINQ(lst, "serlinq.txt"); foreach (var el in serializer.DeSerializeXML("serxml.xml")) { Console.WriteLine($"Airport name:{el.Name}"); foreach (var rainways in el.Runways) { Console.WriteLine($"Rainway length:{rainways.Length}"); } } foreach (var el in serializer.DeSerializeJSON("serjson.txt")) { Console.WriteLine($"Airport name:{el.Name}"); foreach (var rainways in el.Runways) { Console.WriteLine($"Rainway length:{rainways.Length}"); } } foreach (var el in serializer.DeSerializeByLINQ("serlinq.txt")) { Console.WriteLine($"Airport name:{el.Name}"); foreach (var rainways in el.Runways) { Console.WriteLine($"Rainway length:{rainways.Length}"); } } }
public string AddAccount(string accountType, SecureString idPerson, decimal balance, float interestRate, SecureString Iban) { IAccount account = null; if (this.accountRepository.FindByIdentification(Iban)) { throw new Exception("Iban already exist!"); } //IPerson person = CheckIfPersonExistByID(idPerson); accountType = accountType.ToLower(); if (accountType == "checkingaccount") { account = new CheckingAccount(this.person, balance, interestRate, Iban); } else if (accountType == "childsavingsaccount") { account = new ChildSavingsAccount(this.person, balance, interestRate, Iban); } else if (accountType == "retirmentaccount") { account = new RetirmentAccount(this.person, balance, interestRate, Iban); } else { throw new ArgumentException("Account type is not valid"); } this.accountRepository.Add(account); List <IAccount> accounts = new List <IAccount>(); this.accountRepository.accounts = accounts; Serializer1 serializer = new Serializer1(); serializer.SerializeObject("outputFile1.txt", this.accountRepository); this.accountRepository = serializer.DeSerializeObject("outputFile1.txt"); accounts = this.accountRepository.accounts; return($"Successfully added {accountType}."); }