Esempio n. 1
0
        public void AddTag(IDmKeyword tagReference)
        {
            switch (tagReference.Type)
            {
            case TagType.Autor:
                Autors.Add((DmAutor)tagReference);
                break;

            case TagType.Category:
                Categories.Add((DmCategory)tagReference);
                break;

            case TagType.Genre:
                Genres.Add((DmGenre)tagReference);
                break;

            case TagType.People:
                Peoples.Add((DmPeople)tagReference);
                break;

            case TagType.Tag:
                Keywords.Add((DmKeyword)tagReference);
                break;

            case TagType.Collection:
                Collections.Add((DmCollection)tagReference);
                break;
            }
        }
Esempio n. 2
0
        public void AddBook(string name, string autorName)
        {
            var books = Books.Where(book => book.Name == name);

            if (books.Count() != 0)
            {
                Console.Clear();
                Console.WriteLine("Книга с таким именем уже существует!");
                return;
            }
            var autors = Autors.Where(autor => autor.Name.Contains(autorName));

            if (autors.Count() == 1)
            {
                Autors.Add(new Autor()
                {
                    Name = name
                });
            }
            else if (autors.Count() > 1)
            {
                while (true)
                {
                    Console.WriteLine("Есть несколько похожих авторов выберите одного: ");
                    int count = 1;
                    foreach (var autor in autors)
                    {
                        Console.WriteLine(count + ") " + autor.Name);
                        count++;
                    }
                    string select = Console.ReadLine();
                    int    number;
                    if (int.TryParse(select, out number))
                    {
                        if (number > 0 && number < autors.Count())
                        {
                            Books.Add(new Book()
                            {
                                Name = name, Autor = autors.ElementAt(number - 1)
                            });
                            SaveChanges();
                            break;
                        }
                    }
                    else
                    {
                        Console.Clear();
                        Console.WriteLine("Вы ввели некорректный номер! Введите еще раз!");
                    }
                }
            }
            else
            {
                Console.WriteLine("Примерно такого автора не найдено!");
            }
        }
Esempio n. 3
0
        public void AddAutor(string name)
        {
            var autors = Autors.Where(book => book.Name == name);

            if (autors.Count() != 0)
            {
                Console.Clear();
                Console.WriteLine("Автор с таким именем уже существует!");
                return;
            }
            Autors.Add(new Autor()
            {
                Name = name
            });
            SaveChanges();
        }
Esempio n. 4
0
        /// <summary>
        /// Adds autor if not exists and gets his/her id (or finds id of existent one)
        /// </summary>
        /// <param name="autorCount"></param>
        /// <param name="autorFullName"></param>
        /// <returns></returns>
        private int AddAutorAndGetId(ref int autorCount, string autorFullName)
        {
            int autorId;

            if (!Autors.ContainsKey(autorFullName))
            {
                var autor = new Autor {
                    Id = autorCount, FullName = autorFullName
                };
                autor.NumberOfQuotes++;

                Autors.Add(autorFullName, autor);
                autorId = autorCount;
                autorCount++;
            }
            else
            {
                var autor = Autors[autorFullName];
                autor.NumberOfQuotes++;
                autorId = autor.Id;
            }

            return(autorId);
        }