/// <summary> /// Carga los libros de un directorio /// </summary> public BookModelCollection Load(string path) { BookModelCollection books = new BookModelCollection(); BookFormatModelCollection formats = new BookFormatModelCollection(); // Rellena los formatos formats.FillBookFormats(); // Carga los libros if (Directory.Exists(path)) { string[] files = Directory.GetFiles(path, "*.*"); // Añade los libros foreach (string file in files) { BookModel.BookType type = formats.GetBookType(file); if (type != BookModel.BookType.Unknown) { BookModel book = new BookModel(); // Asigna las propiedades book.FileName = file; book.Name = Path.GetFileNameWithoutExtension(file); book.IDType = type; // Añade el libro a la colección books.Add(book); } } } // Devuelve la colección de libros return(books); }
/// <summary> /// Añade un tipo de libro a la colección /// </summary> public void Add(string name, string description, string extension, BookModel.BookType type) { Add(new BookFormatModel { Name = name, Description = description, Extension = extension, BookType = type }); }
/// <summary> /// Obtiene los formatos de determinado tipo de la colección /// </summary> public BookFormatModelCollection SearchByType(BookModel.BookType type) { BookFormatModelCollection formats = new BookFormatModelCollection(); // Obtiene los formatos foreach (BookFormatModel format in this) { if (format.BookType == type) { formats.Add(format); } } // Devuelve la colección return(formats); }