Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    45

    Origine dei dati in un controllo GreadView

    Ciao, sto usando visual web developer 2010 express, ho inserito un controllo GreadView in una pagina e quando vado in configurazione origine dei dati, su avanzate, la opzione di generazione di query di update non è selezionabile (è in grigetto).

    Da cosa può dipendere questo?

    Grazie

  2. #2
    Utente di HTML.it L'avatar di GabbOne
    Registrato dal
    Mar 2006
    Messaggi
    577
    Credo che dipenda da come sia configurato il datasource sottostante poichè anche questo deve essere essere impostato per una operazione di update .

    Ad esempio in un sqldatasource deve essere impostata la query di update. Questa puo essere una possibile causa.

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    45
    Ciao, è proprio quando tento di impostare la selezione di update nel data source che non ho la possibilità di mettere la spunta. Premetto che sono alle mie prime pagine aspx .. ma questo proprio non lo capisco

  4. #4
    Utente di HTML.it L'avatar di GabbOne
    Registrato dal
    Mar 2006
    Messaggi
    577
    guarda le spunte si mettono solo sulle GridView con delle voci del tipo "abilita modifica" e non sul datasource ... ovviamente se nel datasource non hai impostato le istruzioni di update allora la voce da spuntare nella gridview non viene proprio visualizzata

    puoi fare un esempio semplice sempilice :

    1)Trasporti la Grid sulla pagina e fai su di questa "Selezionare origine dati -- >Nuova Origine dati"
    2)Nel popup scegli sqldatasource (o il datasource che utilizzi per il tuo progetto)
    3)A questo punto imposti la stringa di connessione verso il db o utilizza una di quelle proposte (l'editor va a cercare nel web.config quali sono le stringhe di connessione che hai dichiarato a livello di applicazione)
    4) Punti su di una tabella e fai "Avanzate --> Genera query di INSERT , UPDATE e DELETE
    5)Clicca su FINE

    a questo punto se riselezioni la gridView vedrai apparire le spunte per l'abilitazione degli inserimenti , delle modifiche e delle eliminazioni

    fammi sapere

  5. #5
    Una sorgente dati SqlDataSource (credo che stai usando questa), per poter effettuare modifiche ad una tabella, ha bisogno di sapere quali sono le chiavi univoche, per poter identificare una singola riga.

    Devi quindi aggiungere alla gridView la proprietà DataKeyNames con i nomi dei campi chiave separati da virgola.

    Fatto questo puoi ripetere la configurazione origine dati e vedrai che nelle Avanzate puoi ora attivare le modifiche.


    @GabbOne
    quello che hai descritto tu è la procedura per SqlDataSource, ma come ho spiegato, DEVI specificare prima le colonne chiave della tabella. Altro comportamento si ha invece se usassimo ad esempio un ObjectDataSource: la procedura guidata è proprio diversa.

    ciao

  6. #6
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    45
    Ciao, ho povato a seguire le tue istruzioni, ma quando vado su avanzate non posso mettere la spunta su genera query di INSERT UPDATE e DELETE


  7. #7
    fammi vedere il codice aspx della griglia e del SqlDataSource

  8. #8
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    45
    Ciao, questo è il codice:

    [<%@ Page Title="" Language="VB" MasterPageFile="~/Amos.master" AutoEventWireup="false" CodeFile="Prova.aspx.vb" Inherits="Prova" %>

    <asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
    </asp:Content>
    <asp:Content ID="Content2" ContentPlaceHolderID="body" Runat="Server">
    <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
    DataKeyNames="ID" DataSourceID="SqlDataSource1">
    <Columns>
    <asp:BoundField DataField="ID" HeaderText="ID" SortExpression="ID" />
    <asp:BoundField DataField="Cognome" HeaderText="Cognome"
    SortExpression="Cognome" />
    <asp:BoundField DataField="Nome" HeaderText="Nome" SortExpression="Nome" />
    <asp:BoundField DataField="Tipo" HeaderText="Tipo" SortExpression="Tipo" />
    <asp:BoundField DataField="KeyOpe" HeaderText="KeyOpe"
    SortExpression="KeyOpe" />
    <asp:BoundField DataField="DataAgg" HeaderText="DataAgg"
    SortExpression="DataAgg" />
    <asp:BoundField DataField="UtenteAgg" HeaderText="UtenteAgg"
    SortExpression="UtenteAgg" />
    <asp:CommandField ShowDeleteButton="True" />
    </Columns>
    </asp:GridView>


    <asp:SqlDataSource ID="SqlDataSource1" runat="server"
    ConnectionString="<%$ ConnectionStrings:GreadViewConnectionString %>"
    SelectCommand="SELECT * FROM [Operatori]"></asp:SqlDataSource>


    </asp:Content>
    ]

  9. #9
    quindi la tabella [Operatori] ha la colonna [ID] chiave primaria?

    mi fai vedere anche la connection string?

  10. #10
    Utente di HTML.it
    Registrato dal
    Oct 2009
    Messaggi
    45
    Si, ID è la chiave primaria e quella sotto è la connection string dell web.config

    [<add name="GreadViewConnectionString" connectionString="Data Source=BUSap07;Initial Catalog=amosTI;Persist Security Info=True;User ID=amosTI;Password=amosTI" providerName="System.Data.SqlClient"/>]


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.