Har 1 problem med min Windows Forms kod. Lite hjälp skulle uppskattas.
Så min kod funkar nästan helt och hållet som det ska bara 1 problem.
Man ska få ut text från en fil (som jag redan har lagt till) i denna fil finns det böcker Titel, skribent, typ (Roman...), och om boken finns i lager men i filen så finns det 2 böcker som inte finns och där kommer mitt problem.
Som koden är just nu så kommer bara finns eller finns inte beroende på vad jag skriver i mina bool längst ned i koden.
Undrar om någon vet hur jag ska skriva för att få ut både finns och finns inte eftersom böckerna som i nuläget inte finns finns enligt koden.
namespace windows_forms_uppgift
{
public partial class Form1 : Form
{
List<Bok> BigList = new List<Bok>();
List<string[]> SmallList = new List<string[]>();
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
FileLoader();
}
public void FileLoader()
{
if (File.Exists("texter.txt"))
{
List<string> itemSaver = new List<string>();
StreamReader reader = new StreamReader("texter.txt", Encoding.Default, true);
string item = "";
while ((item = reader.ReadLine()) != null)
{
itemSaver.Add(item);
}
foreach (string b in itemSaver)
{
string[] vektor = b.Split(new string[] { "###" }, StringSplitOptions.None);
SmallList.Add(vektor);
switch (vektor[2])
{
case "Roman":
BigList.Add(new Roman(vektor[0], vektor[1], vektor[2]));
break;
case "Novellsamling":
BigList.Add(new Novellsamling(vektor[0], vektor[1], vektor[2]));
break;
case "Tidskrift":
BigList.Add(new Tidskrift(vektor[0], vektor[1], vektor[2]));
break;
default:
break;
}
Random random = new Random();
string obj = BigList[random.Next(BigList.Count)].ToString();
textBox1.Text = Convert.ToString(obj);
}
}
}
}
public class Bok
{
public string typ;
public string titel;
public string författare;
public Bok(string titel, string författare, string typ)
{
this.typ = typ;
this.titel = titel;
this.författare = författare;
}
public override string ToString()
{
return titel + ". " + författare + ". " + typ;
}
public string GetTitel()
{
return titel;
}
}
public class Roman : Bok
{
bool InStock = true;
public Roman(string titel, string författare, string typ) : base(titel, författare, typ) { }
public override string ToString()
{
typ = "Roman";
var status = InStock ? "Boken finns" : "Boken finns inte";
return "\"" + titel + "\" " + "av " + författare + ". (" + typ + ")" + " " + status;
}
}
public class Novellsamling : Bok
{
bool InStock = true;
public Novellsamling(string titel, string författare, string typ) : base(titel, författare, typ) { }
public override string ToString()
{
typ = "Novellsamling";
var status = InStock ? "Boken finns" : "Boken finns inte";
return "\"" + titel + "\" " + "av " + författare + ". (" + typ + ")" + " " + status;
}
}
public class Tidskrift : Bok
{
bool InStock = true;
public Tidskrift(string titel, string författare, string typ) : base(titel, författare, typ) { }
public override string ToString()
{
typ = "Tidskrift";
var status = InStock ? "Boken finns" : "Boken finns inte";
return "\"" + titel + "\" " + "av " + författare + ". (" + typ + ")" + " "+ status;
}
}
}