private static bool MakeNiveau(string item, SVSContext db) { bool success = false; if (db.Niveaus.Find(item) == null) { try { db.Niveaus.Add(new Niveau { Naam = item }); db.SaveChanges(); success = true; } catch { } } return(success); }
private static bool MakeWerkvorm(string item, SVSContext db) { bool success = false; if (db.Werkvormen.Find(item) == null) { try { db.Werkvormen.Add(new Werkvorm { Naam = item }); db.SaveChanges(); success = true; } catch { } } return(success); }
private static bool MakeDuur(string item, SVSContext db) { bool success = false; if (db.Tijdsduren.Find(item) == null) { try { db.Tijdsduren.Add(new Tijdsduur { Eenheid = item }); db.SaveChanges(); success = true; } catch { } } return(success); }
private static bool MakeCert(string item, SVSContext db) { bool success = false; if (db.Certificeringen.Find(item) == null) { try { db.Certificeringen.Add(new Certificering { Naam = item }); db.SaveChanges(); success = true; } catch { } } return(success); }
public static void GetExcelData(SVSContext db) { #region Sheet 2 //string pathToSheetTwo = Directory.GetParent(Directory.GetCurrentDirectory()).Parent.FullName + @"\Data\InfraWorkshopsSheet2.csv"; //StreamReader SheetTwoReader = new StreamReader(pathToSheetTwo); //var SheetTwoHeaders = SheetTwoReader.ReadLine().Split('$'); //foreach (var item in SheetTwoHeaders) //{ // Console.WriteLine(item); //} //string newLine; //while ((newLine = SheetTwoReader.ReadLine()) != null) //{ // var splitSheetTwoLine = newLine.Split('$').ToList(); // foreach (var item in splitSheetTwoLine) // { // if (item != string.Empty) // { // string typeTwo = SheetTwoHeaders[splitSheetTwoLine.IndexOf(item)]; // switch (typeTwo) // { // case "Werkvormen": // Console.WriteLine("Item: {0} | Type: {1} |Success: {2}", item, typeTwo, MakeWerkvorm(item, db)); // break; // case "Niveau": // Console.WriteLine("Item: {0} | Type: {1} |Success: {2}", item, typeTwo, MakeNiveau(item, db)); // break; // case "Duur": // Console.WriteLine("Item: {0} | Type: {1} |Success: {2}", item, typeTwo, MakeDuur(item, db)); // break; // case "Tags": // Console.WriteLine("Item: {0} | Type: {1} |Success: {2}", item, typeTwo, MakeTag(item, db)); // break; // case "Certificeringen Infra": // Console.WriteLine("Item: {0} | Type: {1} |Success: {2}", item, typeTwo, MakeCert(item, db)); // break; // default: // break; // } // } // } //} #endregion #region Sheet 1 string pathToSheetOne = Directory.GetParent(Directory.GetCurrentDirectory()).Parent.FullName + @"\Data\InfraWorkshopsSheet1.csv"; Console.WriteLine(pathToSheetOne); StreamReader SheetOneReader = new StreamReader(pathToSheetOne); string unsplitTopicEntry; var Headers = SheetOneReader.ReadLine().Split('$'); foreach (var item in Headers) { Console.WriteLine(item); } while ((unsplitTopicEntry = SheetOneReader.ReadLine() + LF) != LF.ToString()) { var splitLine = unsplitTopicEntry.Split('$').ToList(); //Trim all parts var tempSplit = splitLine; for (int i = 0; i < splitLine.Count; i++) { tempSplit[i] = splitLine[i].Trim(' ', '*', '"', '-', '•'); } splitLine = tempSplit; while (splitLine.Count < Headers.Count()) { var moreLine = SheetOneReader.ReadLine() + LF; var moreSplits = moreLine.Split('$').ToList(); //Trim all inner parts var tempSplitsTrimmed = moreSplits; for (int i = 0; i < moreSplits.Count; i++) { tempSplitsTrimmed[i] = moreSplits[i].Trim(' ', '*', '"', '-', '•'); } moreSplits = tempSplitsTrimmed; //Join the last and first entry, cut off first entry splitLine[splitLine.Count - 1] = splitLine[splitLine.Count - 1] + moreSplits[0]; moreSplits.Remove(moreSplits[0]); //and add the newline to the current line foreach (var item in moreSplits) { //Console.WriteLine("Pre-trim| {0}", item); var titem = item.Trim(' ', '*', '"', '-', '•'); //Console.WriteLine("Post-trim| {0}", titem); splitLine.Add(titem); } } Topic topicModel = new Topic(); int counter = 0; foreach (var splitTopicEntry in splitLine) { if (splitTopicEntry != string.Empty && splitTopicEntry != LF.ToString()) { string type = Headers[counter]; //string[] lines; switch (type) { case "#": // De Id wordt door de database gegenereerd break; case "Code": // dit is de code //topicModel.Code = splitTopicEntry; break; case "Niveau": //topicModel.Niveau = FindNiveau(splitTopicEntry, db); break; case "Topic": // dit is de naam //topicModel.Name = splitTopicEntry; break; case "Duur": break; case "Werkvorm(en)": break; case "Leerdoel(en)": // Dit zijn de leerdoelen //topicModel.Leerdoel = splitTopicEntry; break; case "Certificering": //lines = splitTopicEntry.Split('\n'); //Console.WriteLine("---LINES CERT---"); //foreach (var item in lines) //{ // Console.WriteLine(item); //} break; case "Benodigde voorkennis": //lines = splitTopicEntry.Split('\n'); //Console.WriteLine("---LINES VOORKENNIS---"); //foreach (var item in lines) //{ // Console.WriteLine(item); //} break; case "Inhoud": // Dit is een beschrijving van de inhoud //topicModel.Inhoud = splitTopicEntry; //lines = splitTopicEntry.Split('\n'); //Console.WriteLine("---LINES INHOUD---"); //foreach (var item in lines) //{ // Console.WriteLine(item); //} break; case "Benodigdheden": //lines = splitTopicEntry.Split('\n'); //Console.WriteLine("---LINES BENOD---"); //foreach (var item in lines) //{ // Console.WriteLine(item); //} break; case "Percipio links": //lines = splitTopicEntry.Split('\n'); //Console.WriteLine("---LINES LINKS---"); //foreach (var item in lines) //{ // Console.WriteLine(item); //} break; case "Tags 1": break; case "Tags 2": break; case "Tags 3": //int a = (int)splitTopicEntry[0]; //Console.WriteLine(a); break; default: break; } Console.WriteLine("-----{0}-----", type); Console.WriteLine(splitTopicEntry); } counter++; } } #endregion Console.ReadLine(); }
private static Niveau FindNiveau(string splitTopicEntry, SVSContext db) { return(db.Niveaus.Find(splitTopicEntry)); }