Exemplo n.º 1
0
        public static void Main(string[] args)
        {
            var host = CreateHostBuilder(args).Build();

            var scopeFactory = host.Services.GetRequiredService <IServiceScopeFactory>();

            using (var scope = scopeFactory.CreateScope())
            {
                var db = scope.ServiceProvider.GetRequiredService <StorageContext>();
                if (db.Database.EnsureCreated())
                {
                    AlbumGenerator.CreateFromDirectory(System.Environment.GetFolderPath(System.Environment.SpecialFolder.MyPictures), db);
                }
            }

            host.Run();
        }
Exemplo n.º 2
0
        public ActionResult Create([Bind(Include = "Id,GroupId,Name,MusicalStyle,VisualStyle,VocalPoints,VisualPoints,DancePoints,PersonalityPoints,Hype,Sales,Wiggle")] Album album)
        {
            Album newAlbum = new Album();

            newAlbum         = album;
            newAlbum.GroupId = Convert.ToInt32(TempData["GroupId"]);
            Debug.Print("GROUP ID: " + Convert.ToInt32(TempData["GroupId"]));
            if (ModelState.IsValid)
            {
                AlbumGenerator albumGenerator = new AlbumGenerator();
                Debug.Print("ALBUM ID: " + newAlbum.Id);
                Debug.Print("ALBUM Group ID: " + newAlbum.GroupId);
                List <Artist> groupArtists = db.Artists.Where(x => x.GroupId == newAlbum.GroupId).ToList();
                Debug.Print("ARTISTS COUNT: " + groupArtists.Count.ToString());

                foreach (Artist a in groupArtists)
                {
                    Debug.Print("Artist in group: " + a.FirstName + " " + a.LastName);
                }

                List <History> histories = albumGenerator.GenerateHistories(newAlbum, groupArtists);

                newAlbum = albumGenerator.album;
                Debug.Print("ALBUM ID: " + newAlbum.Id);
                db.Albums.Add(newAlbum);
                db.SaveChanges();

                newAlbum = db.Albums.ToList().Last();

                foreach (History history in histories)
                {
                    Debug.Print("Controller [ArtistId]: " + history.ArtistId);
                    Debug.Print("Controller [AlbumId]: " + history.AlbumId);
                    history.AlbumId = newAlbum.Id;
                    db.Histories.Add(history);
                    db.SaveChanges();
                }


                return(RedirectToAction("Details", new { id = newAlbum.Id }));
            }

            ViewBag.GroupId = new SelectList(db.Groups, "Id", "Company", album.GroupId);
            return(View(album));
        }
Exemplo n.º 3
0
        static void Main(string[] args)
        {
            var printer = new Printer();
            //Test DomParser
            var domParser = new DomParserCatalogueProcessor();

            domParser.DeleteFromCatalogAllAlbumsWithPriceGreaterThanTwenty();
            var albumsPerArtist = domParser.GetAlbumNumbersForEachAuthor();

            printer.Print(albumsPerArtist);

            //Test XPath
            var xPathParser = new XPathCatalogueProcessor();

            xPathParser.DeleteFromCatalogAllAlbumsWithPriceGreaterThanTwenty();
            var albumsPerArtistXPath = xPathParser.GetAlbumNumbersForEachAuthor();

            printer.Print(albumsPerArtistXPath);

            //Test SongExtractor
            //Song extractor xml reader
            var xmlReaderSongExctrator = new XmlReaderSongExtractor();
            var songTitles             = xmlReaderSongExctrator.ExtractAllSongTitles();

            printer.Print(songTitles);

            //Song exctractot xdocument
            var xDocumentSongExctractor = new XDocumentSongExtractor();

            printer.Print(xDocumentSongExctractor.ExtractAllSongTitles());

            //AlbumGeneratorTest
            var albumGenerator = new AlbumGenerator();

            albumGenerator.GenerateAlbumXml();

            //PriceExtractor try
            var xPathPriceExtractor = new XPathPriceExtractor();

            xPathPriceExtractor.ExtractPricesForAlbumsEqualOrOlderThanFiveYears();
            var linqPathPriceExtractor = new LinqPriceExtractor();

            linqPathPriceExtractor.ExtractPricesForAlbumsEqualOrOlderThanFiveYears();
        }
Exemplo n.º 4
0
 public IEnumerable <Album> CreateAlbum([FromBody] string folderPath)
 {
     AlbumGenerator.CreateFromDirectory(folderPath, _db);
     return(GetAlbums());
 }