[ASP.NET] Datalist hulp

Pagina: 1
Acties:
  • 29 views sinds 30-01-2008

  • Fr0zenFlame
  • Registratie: September 2003
  • Laatst online: 19-11-2024

Fr0zenFlame

LAN 'A Holic

Topicstarter
Hallo,

Ik ben al een tijdje bezig met een mini CMS in ASP.NET voor school en heb het een en andere aan turorials door gekeken & ook een voorbeeld source zoals deze gevonden. Alleen deze werkt met een soort van virtueke database in het geheugen, hoe kan ik er voor zorgen dat deze werkt (dus update/delete & insert naar mn "acces database". De connect is nog wel te maken, maar weet niet precies waar ie wat doet en waar ik dan de database commands moet zetten (oleDb)

Code

public DataTable Cart;
public DataView CartView;

void Page_Load(Object Sender, EventArgs E) {
if (Session["DL3_ShoppingCart"] == null) {
Cart = new DataTable();
Cart.Columns.Add(new DataColumn("Qty", typeof(string)));
Cart.Columns.Add(new DataColumn("Item", typeof(string)));
Cart.Columns.Add(new DataColumn("Price", typeof(string)));
Session["DL3_ShoppingCart"] = Cart;

// first load -- prepopulate with some data
for (int i=1; i<5; i++) {
DataRow dr = Cart.NewRow();
dr[0] = ((int)((i%2)+1)).ToString();
dr[1] = "Item " + i.ToString();
dr[2] = ((double)(1.23 * (i+1))).ToString();
Cart.Rows.Add(dr);
}
}
else
Cart = (DataTable)Session["DL3_ShoppingCart"];

CartView = new DataView(Cart);
CartView.Sort = "Item";
if (!IsPostBack)
BindList();
}

void BindList() {
DataList1.DataSource= CartView;
DataList1.DataBind();
}

void DataList_EditCommand(Object Sender, DataListCommandEventArgs e) {
DataList1.EditItemIndex = (int)e.Item.ItemIndex;
BindList();
}

protected void DataList_CancelCommand(Object Sender, DataListCommandEventArgs e) {
DataList1.EditItemIndex = -1;
BindList();
}

protected void DataList_UpdateCommand(Object Sender, DataListCommandEventArgs e) {
string item = ((System.Web.UI.WebControls.Label)e.Item.FindControl("Label1")).Text;
string qty = ((System.Web.UI.WebControls.TextBox)e.Item.FindControl("Text1")).Text;
string price = ((System.Web.UI.WebControls.TextBox)e.Item.FindControl("Text2")).Text;

// with a database, we'd use an update command. Since we're using an in-memory
// DataTable, we'll delete the old row and replace it with a new one
//remove old entry
CartView.RowFilter = "Item='"+item+"'";
if (CartView.Count > 0) //item exists in cart
CartView.Delete(0);
CartView.RowFilter = "";

//add new entry
DataRow dr = Cart.NewRow();
dr[0] = qty;
dr[1] = item;
dr[2] = price;
Cart.Rows.Add(dr);

DataList1.EditItemIndex = -1;
BindList();
}

[ Voor 5% gewijzigd door Fr0zenFlame op 17-06-2005 12:45 ]

i7-6700K | Z170A XPOWER GAMING TITANIUM EDITION | InWin904 | 32GB Corsair Dominator Platinum | nVidia GeForce RTX2080 TI | Iiyama G-Master UWQH 34" | 2x 1TB Samsung SSD 980PRO | 1x 4TB Samsung 860EVO | Arctis 7 | SteelSeries Apex Pro | Logitech G502 Hero


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 06-05 19:07

gorgi_19

Kruimeltjes zijn weer op :9

Wat denk je zelf? :) Wat heb je zelf geprobeerd om aan te passen? :)

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • whoami
  • Registratie: December 2000
  • Laatst online: 06-05 15:36
Sorry hoor, maar ik denk dat je met een gewone ADO.NET tutorial (die je zowat overal op het internet vind) wel wat verder moet kunnen komen.

Met een beetje zelfwerkzaamheid (as in: snor zo'n tutorial op, lees hem, bekijk wat er gebeurt, etc...), dan moet je het ook wel kunnen.
Het is niet de bedoeling dat wij hier het script voor jou werkend gaan maken.

https://fgheysels.github.io/


Dit topic is gesloten.