static void Main(string[] args) { Console.WriteLine("Unesite broj porta: "); int brojPorta = Int32.Parse(Console.ReadLine()); NetTcpBinding binding = new NetTcpBinding(); binding.Security.Transport.ClientCredentialType = TcpClientCredentialType.Certificate; string address = "net.tcp://localhost:" + brojPorta + "/WCFService"; string srvCertCN = WindowsIdentity.GetCurrent().Name; srvCertCN = Formatter.ParseName(srvCertCN); Console.WriteLine(srvCertCN); X509Certificate2 srvCert = CertManager.GetCertificateFromStorage(StoreName.TrustedPeople, StoreLocation.LocalMachine, "serverSertifikat"); EndpointAddress address2 = new EndpointAddress(new Uri(address), new X509CertificateEndpointIdentity(srvCert)); //string grupa = CertManager.GetOu(StoreName.My, StoreLocation.LocalMachine, "klijentSertifikat"); //Console.WriteLine("Ovo je grupa "+ grupa); int response; using (WCFClient proxy = new WCFClient(binding, address2)) { do { response = ClientMenu.Menu(); switch (response) { case 1: Console.WriteLine("Enter Id(must be number):"); int id; int.TryParse(Console.ReadLine(), out id); Console.WriteLine("Enter region:"); string reg = Console.ReadLine(); Console.WriteLine("Enter city:"); string city = Console.ReadLine(); Console.WriteLine("Enter year:"); int year = int.Parse(Console.ReadLine()); List <int> consum = new List <int>(); int m = 0; for (int i = 0; i < 12; i++) { Console.WriteLine("Enter consumption of electricity for month" + (i + 1)); int.TryParse(Console.ReadLine(), out m); //m = int.Parse(Console.ReadLine()); consum.Add(m); } proxy.Add(id, reg, city, year, consum); break; case 2: Console.WriteLine("Enter id of entity you want to read:"); int Id = int.Parse(Console.ReadLine()); proxy.Read(Id); break; case 3: Console.WriteLine("Enter id of entity you want to edit:"); int idOfEntity = int.Parse(Console.ReadLine()); Console.WriteLine("Enter month number you want to edit consumption of electricity:"); int monthNo = int.Parse(Console.ReadLine()); Console.WriteLine("Enter new value for consumption of electricity:"); int consumption = int.Parse(Console.ReadLine()); proxy.Edit(monthNo, consumption, idOfEntity); break; case 4: Console.WriteLine("Enter id of entity you want to delete:"); int IdE = int.Parse(Console.ReadLine()); proxy.Delete(IdE); break; case 5: Console.WriteLine("Enter city name for which you want to calculate consumption of electricity:"); string c = Console.ReadLine(); proxy.Calculate(c); break; case 6: Console.WriteLine("Goodbye!"); break; default: Console.WriteLine("Wrong command. Try agian"); break; } } while (response != 6); } }
static void Main(string[] args) { NetTcpBinding binding = new NetTcpBinding(); binding.Security.Transport.ClientCredentialType = TcpClientCredentialType.Windows; string address = "net.tcp://localhost:9999/SecurityService"; //WCFClient proxy = new WCFClient(binding, new EndpointAddress(new Uri(address))); using (WCFClient proxy = new WCFClient(binding, new EndpointAddress(new Uri(address)))) { Console.WriteLine("Unesite korisnicko ime i sifru!"); string tempKorisnickoIme = Console.ReadLine(); string tempLozinka = Console.ReadLine().Trim(); proxy.UlogujSe(tempKorisnickoIme, tempLozinka); Console.WriteLine("Klijent je povezan"); Console.WriteLine(proxy.IspisiPoruke(tempKorisnickoIme)); while (true) { Console.WriteLine("*****MENI*****"); Console.WriteLine("Izaberite opciju:\n"); Console.WriteLine("***UKOLIKO STE ADMIN MOZETE IZABRATI NEKU OD OVIH OPCIJA***"); Console.WriteLine("1. Dodaj radnika...\n"); Console.WriteLine("2. Menjaj radnike...\n"); Console.WriteLine("3. Obrisi radnika...\n"); Console.WriteLine("4. Menjaj parametre provizijama...\n"); Console.WriteLine("***UKOLIKO STE RADNIK MOZETE IZABRATI NEKU OD OVIH OPCIJA***"); Console.WriteLine("5. Dodaj korisnika...\n"); Console.WriteLine("6. Menjaj korisnika...\n"); Console.WriteLine("7. Obrisi korisnika...\n"); Console.WriteLine("8. Menjaj transakciju korisnika...\n"); Console.WriteLine("9. Obrisi transakciju korisnika...\n"); Console.WriteLine("10. Zatrazi dozvoljeni minus...\n"); Console.WriteLine("***UKOLIKO STE KORISINIK MOZETE IZABRATI NEKU OD OVIH OPCIJA***"); Console.WriteLine("11. Isplata...\n"); Console.WriteLine("12. Uplata...\n"); proxy.Ispis(); string tempSaKonzoleOpcija = Console.ReadLine(); if (tempSaKonzoleOpcija == "1") { Console.WriteLine("Unesite ime radnika...\n"); string imeRadnikaSaKonzole = Console.ReadLine(); Console.WriteLine("Unesite prezime radnika...\n"); string prezimeRadnikaSaKonzole = Console.ReadLine(); Console.WriteLine("Unesite korisnicko ime radnika...\n"); string korImeSaKonzole = Console.ReadLine(); Console.WriteLine("Unesite sifru radnika...\n"); string sifraSaKonzole = Console.ReadLine(); proxy.DodajRadnika(imeRadnikaSaKonzole, prezimeRadnikaSaKonzole, korImeSaKonzole, sifraSaKonzole); } else if (tempSaKonzoleOpcija == "2") { Console.WriteLine("Unesite korisnicko ime radnika kome zelite da menjate podatke...\n"); string ki = Console.ReadLine(); Console.WriteLine("Unesite novo izmenjeno ime radnika ili staro ukoliko niste menjali ime...\n"); string ime = Console.ReadLine(); Console.WriteLine("Unesite novo izmenjeno prezime radnika ili staro ukoliko niste menjali prezime...\n"); string prezime = Console.ReadLine(); Console.WriteLine("Unesite novu izmenjenu sifru radnika ili staru ukoliko niste menjali sifru...\n"); string si = Console.ReadLine(); proxy.MenjajPostojecegRadnika(ime, prezime, ki, si); } else if (tempSaKonzoleOpcija == "3") { Console.WriteLine("Unesite korisnickon ime radnika kojeg zelite da obrisete...\n"); string temp = Console.ReadLine(); proxy.ObrisiRadnika(temp); } else if (tempSaKonzoleOpcija == "4") { Console.WriteLine("Unesite novu vrednost za vrednost minimalne potrosnje kako bi korisniku bio odobren minus..\n"); double mp = Double.Parse(Console.ReadLine()); Console.WriteLine("Unesite novu vrednost parametra za racunanje minimalne sume koju korisnik dobija za dozvoljeni minus...\n"); double ms = Double.Parse(Console.ReadLine()); Console.WriteLine("Unesite vrednost provizije za iznose do 3000...\n"); double do3000 = Double.Parse(Console.ReadLine()); Console.WriteLine("Unesite vrednost provizije za iznose preko 3000...\n"); double preko3000 = Double.Parse(Console.ReadLine()); Console.WriteLine("Unesite vrednost provizije za momentalni transfer...\n"); double momTr = Double.Parse(Console.ReadLine()); Console.WriteLine("Unesite na koliko sekundi se skida provizija za mesecno odrzavanje...\n"); int ss = Int32.Parse(Console.ReadLine()); Console.WriteLine("Unesite paramatar koji govori koliko je provizija za mesecno odrzavanje...\n"); double mo = Double.Parse(Console.ReadLine()); Console.WriteLine("Unesite brojac za mesecno skidanje provizije...\n"); int b = Int32.Parse(Console.ReadLine()); proxy.MenjajParametreProvizijama(mp, ms, do3000, preko3000, momTr, ss, mo, b); } else if (tempSaKonzoleOpcija == "5") { Console.WriteLine("Unesite ime korisnika...\n"); string imeKorisnikaSaKonzole = Console.ReadLine(); Console.WriteLine("Unesite prezime korisnika...\n"); string prezimeKorisnikaSaKonzole = Console.ReadLine(); Console.WriteLine("Unesite korisnicko ime korisnika...\n"); string korImeSaKonzole = Console.ReadLine(); Console.WriteLine("Unesite sifru korisnika...\n"); string sifraSaKonzole = Console.ReadLine(); Console.WriteLine("Unesite broj racuna korisnika...\n"); string brRac = Console.ReadLine(); Console.WriteLine("Unesite trenutno stanje korisnika...\n"); double stanje = Double.Parse(Console.ReadLine()); proxy.DodajKorisnika(imeKorisnikaSaKonzole, prezimeKorisnikaSaKonzole, sifraSaKonzole, korImeSaKonzole, brRac, stanje); } else if (tempSaKonzoleOpcija == "6") { Console.WriteLine("Unesite korisnicko ime korisnika kome zelite da menjate podatke...\n"); string ki = Console.ReadLine(); Console.WriteLine("Unesite novo izmenjeno ime korisnika ili staro ukoliko niste menjali ime...\n"); string ime = Console.ReadLine(); Console.WriteLine("Unesite novo izmenjeno prezime korisnika ili staro ukoliko niste menjali prezime...\n"); string prezime = Console.ReadLine(); Console.WriteLine("Unesite novu izmenjenu sifru korisnika ili staru ukoliko niste menjali sifru...\n"); string si = Console.ReadLine(); proxy.MenjajKorisnika(ime, prezime, si, ki); } else if (tempSaKonzoleOpcija == "7") { Console.WriteLine("Unesite korisnicko ime korisnika kojeg zelite da obrisete...\n"); string temp = Console.ReadLine(); proxy.ObrisiKorisnika(temp); } else if (tempSaKonzoleOpcija == "8") { Console.WriteLine("Unesite korisnicko ime korisnika kojem zelite da izmenite transakciju..\n"); string ki = Console.ReadLine(); proxy.IspisZaPromenuTransakcije(ki); Console.WriteLine("Unesite novi iznos novca transakcije...\n"); double p = Double.Parse(Console.ReadLine()); Console.WriteLine("Unesite broj transakcije korisnika...\n"); int bt = Int32.Parse(Console.ReadLine()); proxy.MenjajTransakcijuKorisnika(ki, p, bt); proxy.IspisZaPromenuTransakcije(ki); } else if (tempSaKonzoleOpcija == "9") { Console.WriteLine("Unesite korisnicko ime korisnika ciju transakciju zelite da obrisete...\n"); string ki = Console.ReadLine(); Console.WriteLine("Unesite broj transakcije koju zelite da obrisete"); int bt = Int32.Parse(Console.ReadLine()); proxy.ObrisiTransakcijuKorisnika(ki, bt); } else if (tempSaKonzoleOpcija == "10") { Console.WriteLine("Unesite korisnicko ime korisnika koji zeli da trazi dozvoljeni minus...\n"); string ki = Console.ReadLine(); proxy.KorisnikTraziDozvoljeniMinus(ki); } else if (tempSaKonzoleOpcija == "11") { Console.WriteLine("Unesite korisnicko ime korisnika koji zeli da isplati novac...\n"); string ki = Console.ReadLine(); Console.WriteLine("Unesite koliku svotu novca korisnik zeli da isplati...\n"); double n = Double.Parse(Console.ReadLine()); proxy.Isplata(ki, n); } else if (tempSaKonzoleOpcija == "12") { Console.WriteLine("Unesite korisnicko ime korisnika koji zeli da izvrsi uplatu...\n"); string ki = Console.ReadLine(); Console.WriteLine("Unesite korisnicko ime korisnika kojem zelite da uplatite novac...\n "); string ku = Console.ReadLine(); Console.WriteLine("Unesite koliku svotu novca zelite da uplatite...\n"); double n = Double.Parse(Console.ReadLine()); Console.WriteLine("Vrsta uplate!\n"); Console.WriteLine("1-uplata drugoj osobi koja je korisnik sistema...\n"); Console.WriteLine("2-uplata drugoj osobi koja nije korisnik sistema(manje ili tacno 3000,00 RSD)...\n"); Console.WriteLine("3-uplata drugoj osobi koja nije korisnik sistema(vise od 3000,00 RSD)...\n"); Console.WriteLine("4-momentalni transfer...\n"); int temp = Int32.Parse(Console.ReadLine()); proxy.Uplata(ku, ki, n, temp); Console.WriteLine("Uplata se izvrsava...\n"); } else { Console.WriteLine("OPCIJA NE POSTOJI!!!\n"); } } } // Console.ReadLine(); }
static void Main(string[] args) { /// Define the expected service certificate. It is required to establish cmmunication using certificates. string srvCertCN = "WCFService"; /// Define the expected certificate for signing ("<username>_sign" is the expected subject name). /// .NET WindowsIdentity class provides information about Windows user running the given process string signCertCN = String.Empty; /// Define subjectName for certificate used for signing which is not as expected by the service string wrongCertCN = String.Empty; NetTcpBinding binding2 = new NetTcpBinding(); binding2.Security.Transport.ClientCredentialType = TcpClientCredentialType.Certificate; int id; double iznos; string ime; int br; /// Use CertManager class to obtain the certificate based on the "srvCertCN" representing the expected service identity. X509Certificate2 srvCert = CertManager.GetCertificateFromStorage(StoreName.TrustedPeople, StoreLocation.LocalMachine, srvCertCN); EndpointAddress address2 = new EndpointAddress(new Uri("net.tcp://localhost:10001/WCFService"), new X509CertificateEndpointIdentity(srvCert)); using (WCFClient proxy = new WCFClient(binding2, address2)) { proxy.RegistrujKorisnika(); while (true) { Console.WriteLine(" -- (1): UPLATA NA RAČUN -- "); Console.WriteLine(" -- (2): REZERVIŠI -- "); Console.WriteLine(" -- (3): PLATI REZERVACIJU -- "); Console.WriteLine(" -- (4): DODAJ PROJEKCIJU -- "); Console.WriteLine(" -- (5): IZMENI PROJEKCIJU -- "); Console.WriteLine(" -- (6): IZMENI POPUST -- "); ; int choice = Int32.Parse(Console.ReadLine()); { switch (choice) { case 1: Console.WriteLine("Unesite iznos: "); iznos = Double.Parse(Console.ReadLine()); proxy.UplatiPareNaRacun(iznos); break; case 2: Console.WriteLine("Unesite ID predstave: "); id = Int32.Parse(Console.ReadLine()); Console.WriteLine("Unesite broj karata: "); br = Int32.Parse(Console.ReadLine()); proxy.NapraviRezervaciju(id, br); break; case 3: Console.WriteLine("Unesite ID predstave: "); id = Int32.Parse(Console.ReadLine()); proxy.PlatiRezervaciju(id); break; case 4: Projekcija p; Console.WriteLine("Unesite ime predstave: "); ime = Console.ReadLine(); Console.WriteLine("Unesite datum predstave(mesec, dan): "); DateTime vreme = DateTime.Now; br = Int32.Parse(Console.ReadLine()); vreme.AddMonths(br); br = Int32.Parse(Console.ReadLine()); vreme.AddDays(br); Console.WriteLine("Unesite vreme predstave(sat, minuti): "); br = Int32.Parse(Console.ReadLine()); vreme.AddHours(br); br = Int32.Parse(Console.ReadLine()); vreme.AddMinutes(br); Console.WriteLine("Unesite broj sale: "); br = Int32.Parse(Console.ReadLine()); Console.WriteLine("Unesite cenu karte: "); double cena = Double.Parse(Console.ReadLine()); p = new Projekcija(ime, vreme, br, cena); proxy.DodajProjekciju(p); break; case 5: Console.WriteLine("Unesite ID predstave: "); id = Int32.Parse(Console.ReadLine()); Console.WriteLine("Unesite ime predstave: "); ime = Console.ReadLine(); Console.WriteLine("Unesite datum predstave(mesec, dan): "); vreme = DateTime.Now; br = Int32.Parse(Console.ReadLine()); vreme.AddMonths(br); br = Int32.Parse(Console.ReadLine()); vreme.AddDays(br); Console.WriteLine("Unesite vreme predstave(sat, minuti): "); br = Int32.Parse(Console.ReadLine()); vreme.AddHours(br); br = Int32.Parse(Console.ReadLine()); vreme.AddMinutes(br); Console.WriteLine("Unesite broj sale: "); br = Int32.Parse(Console.ReadLine()); Console.WriteLine("Unesite cenu karte: "); cena = Double.Parse(Console.ReadLine()); p = new Projekcija(ime, vreme, br, cena); proxy.IzmeniProjekciju(p); break; case 6: Console.WriteLine("Unesite popust(procenat): "); iznos = Double.Parse(Console.ReadLine()); proxy.IzmeniPopust(iznos); break; default: Console.WriteLine("Uneli ste pogresnu komandu!\r\n"); break; } } } } }