Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [c#] cancellazione dalla gridview

    ho creato una gridview e ci ho aggiunto il tag per far comparire la funziona cancella:
    codice:
    <asp:CommandField>
    faccio la query per riempire la grid ed è tutto ok. mi appare a questo punto, per ogni occorrenza trovata, la parola DELETE che è cliccabile. teoricamente cliccandoci sopra dovrei cancellare la riga.

    ho quindi inserito nel file .cs il seguente codice:

    codice:
    protected void griglia_RowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            
           
            
            objSqlConnection.Open();
           // Response.Write(objSqlConnection.State);        
            SqlCommand objSqlCommand = new SqlCommand("delete from cliente where cod_cliente= '" +  "' ",objSqlConnection);
            objSqlCommand.ExecuteNonQuery();
            objSqlConnection.Close();
           int i = objSqlCommand.ExecuteNonQuery();
            if (i > 0)
            {
                Label1.Text = "Eliminazione avvenuta con successo";
            }
            else
            {
                Label1.Text = "Si è verificato un errore";
            }
            objSqlConnection.Close();
        }
    chiaramente la query non funziona perchè non riesco a ricavare il aprametro da darle in pasto per mardarla in run. come diavolo si fa?

  2. #2
    Ciao spaceconte,

    Non ho mai utilizzato la funzione _RowDeleting, ma sono pressochè sicuro che i dati che ti servono li trovi in GridViewDeleteEventArgs e.

    Dovresti a runtime, debuggando, vedere cosa c'è li dentro quando entri nella funzione...

    Marco Cavallo
    WebMaster & Programmer
    Il mio sito in continua evoluzione...
    Vieni a trovarmi!
    http://www.artcava.net/

  3. #3
    Utente di HTML.it L'avatar di edaje
    Registrato dal
    Jul 2003
    Messaggi
    363
    Se la tabella ha una sola chiave primaria:
    e.Keys[0].ToString();

    Nella gridview devi impostare la proprietà DataKeysName="campo chiave"

  4. #4
    Originariamente inviato da edaje
    Se la tabella ha una sola chiave primaria:
    e.Keys[0].ToString();

    Nella gridview devi impostare la proprietà DataKeysName="campo chiave"
    la tabella ha solo una chiave primaria ma quando mando in run ottengo questo errore:

    "Index was out of range. must be non-negative and less than the size of the collection. parameter name: index"

  5. #5
    Utente di HTML.it L'avatar di edaje
    Registrato dal
    Jul 2003
    Messaggi
    363
    hai impostato datakeysname?

  6. #6
    Originariamente inviato da edaje
    hai impostato datakeysname?
    la chiave primaria della tab è cod_cliente e nella gridview ho impostato così DataKeyNames="cod_cliente"

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.