Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 20 su 20
  1. #11
    Originariamente inviato da valeria75
    myCommand.Parameters.Add("?Qt", OleDb.OleDbType.VarChar).Value = quantity
    oledb non richiede che i parametri siano nominati ma solo che essi siano aggiunti all'insieme dei parametri nello stesso ordine con cui sono presenti nella query sql. Quindi
    codice:
    sql = "SELECT * FROM Prodotti WHERE IDProdotto = ? AND Colore = ?"
    myCommand.Parameters.Add("?", OleDb.OleDbType.Integer).Value = id
    myCommand.Parameters.Add("?", OleDb.OleDbType.VarChar).Value = colore
    per quanto riguarda il datatable non è un problema costruire le colonne del mio datatable, quello che non so è come associare il command alla tabella creata manualmente.
    Mettiamo allora che hai la tabella. Nella tabella hai aggiunto una riga per ogni prodotto ordinato.
    codice:
    myCommand.CommandText = "nomesp"
    for each _dr as datarow in tuadt.rows
    myCommand.Parameters.Clear 
    myCommand.Parameters.Add("?", OleDb.OleDbType.Integer).Value = cint(_dr("IDProdotto"))
    ' ecc. ecc.
    myCommand.executenonquery
    next
    Saluti a tutti
    Riccardo

  2. #12
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,117
    Grazie per l'aiuto

    ahhh quindi posso usare il command anche per salvare i dati nel mio datatable (non nel DB)

    ma scusa una domanda, se sto lavorando su un datatable e non sul DB, a cosa serve far riferimento ai parametri??

    myCommand.Parameters.Add("?", OleDb.OleDbType.Integer).Value = cint(_dr("IDProdotto"))

    io devo salvare alcuni dati in alcune colonne del datatable...

  3. #13
    Moderatore di ASP.net L'avatar di djciko
    Registrato dal
    Nov 2002
    Messaggi
    6,887
    scusate l'intromissione, ma Valeria, che database stai usando ? SqlServer ?

  4. #14
    Originariamente inviato da valeria75
    ahhh quindi posso usare il command anche per salvare i dati nel mio datatable (non nel DB)
    ma scusa una domanda, se sto lavorando su un datatable e non sul DB, a cosa serve far riferimento ai parametri??
    VVoVe: argh... no, non intendevo farti fare questo.
    C'e' stato un fraintendimento. Il codice che ti ho postato va bene per passare i dati dalla tabella in memoria al db.
    Per passare i dati dall'interfaccia utente (es. repeater, datagrid textbox e altro) alla datatable usi un codice diverso che non ha niente a che vedere con il command.
    codice:
    dim dr as datarow = tuadatatable.newrow
    dr("nomecolonna") = tuatextboxoaltro.text 
    ' ecc.
    tuadatatable.rows.add(dr)
    Saluti a tutti
    Riccardo

  5. #15
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,117
    Ok allora ci siamo!!!

    ora è chiaro

    scusa ma ho fatto confusione


    Per quanto riguarda il DB: Access.

  6. #16
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,117
    Ciao... non capisco dove sbaglio, ottengo questo errore

    Column 'CodiceArticolo' does not belong to table .

    Devo definire a priori le colonne del mio datatable???

    io faccio:

    nella pagina pricipale:


    protected DataTable TbCarrello;

    if (Session["TbCarrello"] == null)
    Session["TbCarrello"] = new DataTable();

    nelle varie pagine dove vengono scelti gli articoli

    DataTable TbCarrello = (DataTable)(Session["TbCarrello"]);

    DataRow dr = TbCarrello.NewRow();
    dr["CodiceArticolo"] = code;
    dr["Qt"] = quantity;
    dr["Totale"] = totale;
    TbCarrello.Rows.Add(dr);

  7. #17
    Originariamente inviato da valeria75
    Devo definire a priori le colonne del mio datatable???
    Si. Ti avevo indicato qualche post piu' sopra una indicazione su come aggiungere colonne alla datatable.
    Saluti a tutti
    Riccardo

  8. #18
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,117
    Ti faccio l'ultima domanda.... grazie per la pazienza

    come cancello gli elementi da datagrid?? mi spiego meglio: prima il datagrid era collegato al DB, quindi quando cancellavo un elemento dal DataGrid, lo cancellavo nel DB

    int IDRiga =(int)dgCarrello.DataKeys[(int)E.Item.ItemIndex];

    OleDbCommand myCommand = new OleDbCommand("SP_Carrello_Delete", myConnection);
    myCommand.CommandType=CommandType.StoredProcedure;
    myCommand.Parameters.Add(new OleDbParameter("@IDRiga", IDRiga));

    try
    {
    myConnection.Open();
    myCommand.ExecuteNonQuery();
    myConnection.Close();


    ora invece??? il DataGrid ha come DataSource il DataTable presente nella variabile di sessione... come cancello una riga (una specifica riga) del mio DataTable??

    Grazie ancora

  9. #19
    Originariamente inviato da valeria75
    come cancello una riga (una specifica riga) del mio DataTable??
    codice:
    dim dv as new dataview(tuadatatable)
    dv.rowfilter = string.format("IDRiga = {0}", tuoid)
    if dv.count = 1 then dv(0).delete
    Saluti a tutti
    Riccardo

  10. #20
    Utente bannato
    Registrato dal
    Jun 2004
    Messaggi
    1,117
    C'è qualche cosa che non va...

    ho fatto mille prove ma invece di cancellare un elemento, nella griglia spariscono tutti; ho controllato col debug ed effettivamente nella variabile di sessione, dopo l'eliminazione, gli elementi diminuiscono di 1... ma perchè nel datagrid sparisce tutto dopo l'operazione di delete???

    Grazie per l'aiuto

    protected void dgCarrello_Delete(Object sender, DataGridCommandEventArgs E)
    {
    try
    {
    string CodArt = Convert.ToString(dgCarrello.DataKeys[(int)E.Item.ItemIndex]);

    DataTable dt = new DataTable();
    dt = (DataTable)(Session["TbCarrello"]);

    dt.DefaultView.RowFilter = string.Format("CodiceArticolo = {0}", CodArt);
    if (dt.DefaultView.Count == 1)
    dt.DefaultView[0].Delete();

    Session["TbCarrello"] = dt;

    dgCarrello.EditItemIndex = -1;
    BindGrid();
    }
    catch (Exception exc)
    {
    lblErrore.Text = "Errore! " + exc.Message;
    }
    }



    protected void BindGrid()
    {
    if (Session["TbCarrello"] != null)
    {
    dgCarrello.DataSource = ((DataTable)(Session["TbCarrello"])).DefaultView;
    dgCarrello.DataBind();
    }
    }


    come dicevo sembra che la varibile di sessione contenga gli elementi corretti (che infatti diminuiscono dopo il delete)....

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.