示例#1
0
        static void Main(string[] args)
        {
            var proKeys = new List <string>();
            var expKeys = new List <string>();

            var countKeys = 3;

            for (int i = 0; i < countKeys; i++)
            {
                proKeys.Add(Guid.NewGuid().ToString());
                expKeys.Add(Guid.NewGuid().ToString());
            }

            DisplayKeys(proKeys, expKeys);

            DocumentWorker documentWorker = new DocumentWorker();

            while (true)
            {
                Console.WriteLine("\n1)Открыть документ\n2)Редактировать документ\n3)Сохранить документ" +
                                  "\n4)Ввести ключ\n5)Версия программы\n6)Показать доступные ключи [только для разработчиков]"); // 5 - текущая версия документворкера

                int choice;
                int.TryParse(Console.ReadLine(), out choice);

                switch (choice)
                {
                case 1:
                    documentWorker.OpenDocument();
                    break;

                case 2:
                    documentWorker.EditDocument();
                    break;

                case 3:
                    documentWorker.SaveDocument();
                    break;

                case 4:
                    RegisterKey(ref documentWorker, ref proKeys, ref expKeys);
                    break;

                case 5:
                    Console.WriteLine(documentWorker);     // выведет его версию
                    break;

                case 6:
                    DisplayKeys(proKeys, expKeys);
                    break;

                default:
                    break;
                }
            }
        }
示例#2
0
        static void RegisterKey(ref DocumentWorker documentWorker, ref List <string> proKeys, ref List <string> expKeys)
        {
            Console.Write("Введите ключ: ");

            string key = Console.ReadLine();

            if (proKeys.Contains(key))
            {
                documentWorker = new ProDocumentWorker();
                proKeys.Remove(key);
                Console.WriteLine("Введён ключ Pro");
            }
            else if (expKeys.Contains(key))
            {
                documentWorker = new ExpertDocumentWorker();
                expKeys.Remove(key);
                Console.WriteLine("Введён ключ Exp");
            }
            else
            {
                Console.WriteLine("Такого ключа не существует, либо он уже был использован");
            }
        }