} // för meddelande i inlägg public void CreateNewPost() { var serialize = new FileHandling(); // instansiera klassen filehandling string Name = ""; string Post = ""; Clear(); do // do-while loop körs om input i namn eller post är tomt { WriteLine(" - Namn och inlägg får inte vara tomt - "); Write("Skriv in ditt namn: "); Name = ReadLine(); // läs in input Write("Skriv ditt inlägg: "); Post = ReadLine(); // läs in input }while(string.IsNullOrEmpty(Post) || string.IsNullOrEmpty(Name)); serialize.DeSerialize(out string jsonData, out List <CreatePosts> postList); // kör funktionen deserialize postList.Add(new CreatePosts() // Lägg till ny post { MyName = Name, MyPost = Post, }); serialize.Serialize(jsonData, postList); // kör funktionen serialize }
public void DeletePost() { bool deleteCheck = true; // sätt en bool till tru while (deleteCheck) // loopa så länge bool är true { var serialize = new FileHandling(); // instansiera klassen filehandling WriteLine(); Write("Radera inlägg nummer: "); string deleteInput = ReadLine(); // läs input try // prova om det är rätt input { int deleteIndex = Convert.ToInt32(deleteInput) - 1; // gör om string till int, ta bort ett serialize.DeSerialize(out string jsonData, out List <CreatePosts> postList); // kör funktionen deserialize postList.RemoveAt(deleteIndex); // Radera i listan där index = deleteIndex serialize.Serialize(jsonData, postList); // kör funktionen serialisera Clear(); deleteCheck = false; } catch (ArgumentOutOfRangeException) // om input är mer än vad som finns i listan { Clear(); ForegroundColor = ConsoleColor.Red; // ändra textfärg WriteLine("- Numret finns inte i listan, försök igen. - \n"); ForegroundColor = ConsoleColor.Gray; serialize.DeSerialize(out string jsonData, out List <CreatePosts> postList); // kör funktionen deserialize int indx = 1; // index börjar på ett för att det är snyggare foreach (var post in postList) // foreach-loop för att skriva ut alla poster { WriteLine($"[{indx}]{post.MyName} - {post.MyPost}"); indx++; } deleteCheck = true; } catch (FormatException) // om input inte är nummer { Clear(); ForegroundColor = ConsoleColor.Red; // ändra textfärg WriteLine("- Du måste välja ett nummer, försök igen. - \n"); ForegroundColor = ConsoleColor.Gray; serialize.DeSerialize(out string jsonData, out List <CreatePosts> postList); // kör funktionen deserialize int indx = 1; // index börjar på ett för att det är snyggare foreach (var post in postList) // foreach-loop för att skriva ut alla poster { WriteLine($"[{indx}]{post.MyName} - {post.MyPost}"); indx++; } deleteCheck = true; } } }