09. oktober 2010 - 14:49
Der er
5 kommentarer
Slette Session item
Hej
Jeg har lavet en simpel indkøbskurv som gemmer de ønskede varer i en session og viser indholdet med en repeater. Men skal have muligehed for at slette en vare også hvis dette ønskes.
Det skal gøres med Session.Remove("") ikke? Hvordan sletter jeg lige præcis den vare som der klikkes på.
Håber jeg har forklaret mig ordentligt :)
På forhånd tak
09. oktober 2010 - 16:38
#2
Selvf :)
Koden:
protected void Vare1_Click(object sender, System.Web.UI.ImageClickEventArgs e)
{
int antal = 0;
int.TryParse(txtVare1.Text, out antal);
AddVare("Produktnavn", "Varenr", antal, 100);
}
protected void Vare2_Click(object sender, System.Web.UI.ImageClickEventArgs e)
{
int antal = 0;
int.TryParse(txtVare2.Text, out antal);
AddVare("Produktnavn", "Varenr", antal, 100);
}
private void AddVare(string name, string number, int count, int price)
{
List<Vare> varer = Session["varer"] as List<Vare>;
if (varer == null)
{
varer = new List<Vare>();
}
Vare v = varer.Where(x => x.Varenr == name).FirstOrDefault();
if (v != null)
{
v.Antal += count;
for (int i = 0; i < varer.Count; i++)
{
if (varer[i].Varenr == v.Varenr)
{
varer[i] = v;
}
}
}
else
{
Vare vare = new Vare();
vare.Varenr = number;
vare.Varenavn = name;
vare.Antal = count;
vare.Pris = price;
varer.Add(vare);
}
Session["varer"] = varer;
}
09. december 2010 - 16:15
#5
noget lig.
private void DeleteVare(string number)
{
List<Vare> varer = Session["varer"] as List<Vare>;
v.Antal += count;
for (int i = 0; i < varer.Count; i++)
{
if (varer[i].Varenr == number)
{
varer.RemoveAt(i);
break;
}
}
Session["varer"] = varer;
}