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(); }
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)); }
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(); }
public IEnumerable <Album> CreateAlbum([FromBody] string folderPath) { AlbumGenerator.CreateFromDirectory(folderPath, _db); return(GetAlbums()); }