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

    GridView - Come recuperare il "DataKeyNames"

    Salve a tutti,
    ho inserito nella mia pagina una GridView per la quale ho impostato come "DataKeyNames" l'ID del record associato.

    Adesso, quando faccio cancellare un record (ho attivato naturalmente le opzioni di delete ed insert nel GredView), vorrei poter recuperare il valore della "DataKeyNames" della riga selezionata per essere eliminata. Questo perche' cancellando il dato record dal DataGrid vorrei eliminare anche i record associati a questo in un'altra tabella.

    In sostanza come posso recuperare il DataKeyNames NON dopo l'evento select del DataGrid ma dopo l'evento DELETE?

    Grazie a tutti.
    Il mio ultimo libro:
    Giorni di Follia. Presenze inquietanti a Pescara.
    www.giornidifollia.it

  2. #2
    Utente di HTML.it L'avatar di 99eros9
    Registrato dal
    Jan 2003
    Messaggi
    2,637
    Prima di tutto sarebbe possibile far svolgere l'operazione al DBMS se le tabelle sono relazionate, stò parlando dell'integrità referenziale.
    Seconda cosa, vuoi prendere in esame l'evento RowDeleting o RowDeleted? non si capisce perchè non sei chiaro. Quando vuoi recuperare questo valore?
    Terzo, la proprietà DataKeyNames restituisce una array contenente i nomi dei campi chiave primaria, e questo può lavorare insieme alla proprietà DataKeys che restituisce una collection di valori dei campi chiave primaria impostati in DataKeiNames.

    potresti provare così:

    int _id = tuaGridView.DataKeys[tuaGridView.SelectedIndex]

    Esiste ance la proprietà SelectedDataKey che restituisce un oggetto DataKey del record correntemente selezionato.
    Tala är silver men tiga är guld!
    Pubblica il tuo curriculum
    Segnala il tuo sito
    Ancl

  3. #3
    Dunque, innanzi tutto grazie per la risposta, poi per quello che mi chiedi sinceramente non ti so rispondere a tutto:

    1. Integrita' Referenziale
    E' una possibilita' che avevo preso in considerazione e in effetti mi risolve alla grande, pero' volevo approfondire l'argomento per eventuali utilizzi futuri.

    2. RowDeleted o RowDeleting
    Ecco su questo non so rispondere. Per quanto ho capito uno restituisce le colonne GIA' cancellate mentre l'altro PRIMA di essere cancellate. Quindi per quello che dovrei fare andrebbero bene entrambe, oppure per essere pignoli forse e' meglio il deleted, ovvero il gia' eliminato, visto che poi andrei a cancellare i valori delle altre tabelle solo dopo che la prima eliminazione e' andata a buon fine.

    3. int _id = tuaGridView.DataKeys[tuaGridView.SelectedIndex]
    Provero' a fare come dici, letto cosi', il codice che mi indichi, sembra proprio quello che mi serve. Ti faro' sapere.

    4. SelectedDataKey
    Nelle varie prove fatte credo di averlo usato ma poiche' l'evento che vado a rilevare non e' il SELECT ma il DELETE non sono riuscito a ricavare i valori della riga che voglio cancellare. Ma parlo da ignorante, quindi e' possibile che abbia fatto chissa' quale casino.


    Grazie ancora.

    Igor
    Il mio ultimo libro:
    Giorni di Follia. Presenze inquietanti a Pescara.
    www.giornidifollia.it

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 © 2025 vBulletin Solutions, Inc. All rights reserved.