C# Bloggen. Problem med sökning i vektor

Permalänk

C# Bloggen. Problem med sökning i vektor

Sitter med den mytomsbundna Bloggen.
Har nu suttit i 2 dagar och försöker få till det med att man ska kunna söka efter inlägg i Case 3: men när man söker så hittas bara det senaste inlägget och skrivs ut.
Någon kunnig som skulle kunna peka på vad felet är och komma med tips på hur jag löser det?

namespace Bloggen { internal class Program { static void Main(string[] args) { bool running = true; // Här gör jag en lista för strängvektorer List<string[]> Bloggen = new List<string[]> { }; string[] list = new string[2]; // Variabbel för sökfunktion string search = ""; // En string för datum då inläggen görs string Date = ""; while (running) { // Rensar konsolen Console.Clear(); Console.WriteLine("\nVälkommen till bloggen!"); Console.WriteLine("\n[1] - Skriv nytt inlägg i bloggen"); Console.WriteLine("\n[2] - Skriv ut alla blogginlägg"); Console.WriteLine("\n[3] - Sök inlägg i bloggen"); Console.WriteLine("\n[4] - Avsluta programmet"); Console.WriteLine("\nVar vänlig och välj ett alternativ"); int menyVal; // TryParse för felhantering int.TryParse(Console.ReadLine(), out menyVal); switch (menyVal) { case 1: // [1] - Skapa inlägg list = new string[2]; // Rensar konsolen Console.Clear(); Console.Write("Ange titel: "); // Sparar titeln i index [0] list[0] = Console.ReadLine(); Console.Write("Skriv innehåll: "); // Sparar innehåll i index [1] list[1] = Console.ReadLine(); // Här sparas datumet när inlägget skapas Date = DateTime.Now.ToString("yyyy - MM - dd"); // Här sparas inlägget i bloggen. Bloggen.Add(list); break; case 2: // [2] - Skriv ut alla inlägg // Rensar konsolen Console.Clear(); Console.WriteLine("\nDessa inlägg finns i bloggen: "); foreach (var item in Bloggen) { // Skriver ut datum först Console.WriteLine(Date); foreach (var text in item) { Console.WriteLine(text); } } break; case 3: // [3] - Sök inlägg // Rensar konsolen Console.Clear(); Console.Write("Sök efter ett inlägg: "); search = Console.ReadLine(); for (int i = 0; i < Bloggen.Count; i++) { string[] title = Bloggen[i]; if (search == title[0]) { //Här visas vad som hittades med datum,titel och innehåll. Console.WriteLine("Hittade detta inlägg: " + "\n\t" + Date + "" + "\n\t" + list[0] + "" + "\n\t" + list[1]); } else if ((i+1) == Bloggen.Count) { Console.WriteLine("Inget inlägg hittades"); } } break; case 4: // [4] - Avsluta programmet // Rensar konsolen Console.Clear(); Console.WriteLine("Tack för denna gång!"); running = false; // Här får jag boolen att avslutas break; default: Console.WriteLine("Var vänlig och välj mellan alternativ 1-4"); break; } } } } }

Permalänk
Medlem

Själva sökningen ser ok ut, men fundera lite på vad det egentligen är du skriver ut.

Och orelaterat till ditt problem, men title är ett dåligt variabelnamn i case 3, det är ju hela inlägget och inte bara titeln som den variabeln pekar på. Sånt kan lura dig senare när du läser koden och tror att den gör något annat än vad den egentligen gör.