Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
ASP.NET 2.0 / 3.5 / 4.0
Non funziona l'eliminazione in listview
martedì 02 febbraio 2010 - 11.29
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
tetella
Profilo
| Newbie
3
messaggi | Data Invio:
mar 2 feb 2010 - 11:29
La listview è definita così:
<asp:ListView ID="ListView1" runat="server" DataKeyNames="IdPostIt" DataSourceID="SqlDataSource1">
<ItemTemplate>
<span style="color:White; font-weight:bold">Nome e cognome:</span>
<asp:Label ID="Nome_e_cognomeLabel" runat="server" Text='<%# Eval("Nome_e_cognome") %>' />
<br />
<span style="color:White; font-weight:bold">E-mail:</span>
<asp:Label ID="EmailLabel" runat="server" Text='<%# Eval("Email") %>' />
<br />
<span style="color:White; font-weight:bold">Corso di laurea:</span>
<asp:Label ID="Corso_di_laureaLabel" runat="server" Text='<%# Eval("Corso_di_laurea") %>' />
<br />
<span style="color:White; font-weight:bold">Oggetto:</span>
<asp:Label ID="OggettoLabel" runat="server" Text='<%# Eval("Oggetto") %>' />
<br />
<span style="color:White; font-weight:bold">Messaggio:</span>
<asp:Label ID="MessaggioLabel" runat="server" Text='<%# Eval("Messaggio") %>' />
<br /><br />
<asp:Button ID="DeleteButton" runat="server" CommandName="Delete" Text="Elimina post-it" />
</span>
</ItemTemplate>
<EmptyDataTemplate>
<span style=" text-align:center; color:White; font-weight:bold">Non sono presenti post-it in bacheca.</span>
</EmptyDataTemplate>
<LayoutTemplate>
<div ID="itemPlaceholderContainer" runat="server" style="">
<span ID="itemPlaceholder" runat="server" />
</div>
<div style="">
</div>
</LayoutTemplate>
<ItemSeparatorTemplate>
<hr />
</ItemSeparatorTemplate>
</asp:ListView>
La sorgente dati è:
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConflictDetection="CompareAllValues"
ConnectionString="<%$ ConnectionStrings:ConnectionString %>"
DeleteCommand="DELETE FROM [PostIt] WHERE [IdPostIt] = @original_IdPostIt AND [Nome_e_cognome] = @original_Nome_e_cognome AND [Email] = @original_Email AND [Corso_di_laurea] = @original_Corso_di_laurea AND [Oggetto] = @original_Oggetto AND [Messaggio] = @original_Messaggio"
OldValuesParameterFormatString="original_{0}"
SelectCommand="SELECT * FROM [PostIt] ORDER BY [IdPostIt] DESC"
UpdateCommand="UPDATE [PostIt] SET [Nome_e_cognome] = @Nome_e_cognome, [Email] = @Email, [Corso_di_laurea] = @Corso_di_laurea, [Oggetto] = @Oggetto, [Messaggio] = @Messaggio WHERE [IdPostIt] = @original_IdPostIt AND [Nome_e_cognome] = @original_Nome_e_cognome AND [Email] = @original_Email AND [Corso_di_laurea] = @original_Corso_di_laurea AND [Oggetto] = @original_Oggetto AND [Messaggio] = @original_Messaggio">
<DeleteParameters>
<asp:Parameter Name="original_IdPostIt" Type="Int32" />
<asp:Parameter Name="original_Nome_e_cognome" Type="String" />
<asp:Parameter Name="original_Email" Type="String" />
<asp:Parameter Name="original_Corso_di_laurea" Type="String" />
<asp:Parameter Name="original_Oggetto" Type="String" />
<asp:Parameter Name="original_Messaggio" Type="String" />
</DeleteParameters>
<UpdateParameters>
<asp:Parameter Name="Nome_e_cognome" Type="String" />
<asp:Parameter Name="Email" Type="String" />
<asp:Parameter Name="Corso_di_laurea" Type="String" />
<asp:Parameter Name="Oggetto" Type="String" />
<asp:Parameter Name="Messaggio" Type="String" />
<asp:Parameter Name="original_IdPostIt" Type="Int32" />
<asp:Parameter Name="original_Nome_e_cognome" Type="String" />
<asp:Parameter Name="original_Email" Type="String" />
<asp:Parameter Name="original_Corso_di_laurea" Type="String" />
<asp:Parameter Name="original_Oggetto" Type="String" />
<asp:Parameter Name="original_Messaggio" Type="String" />
</UpdateParameters>
</asp:SqlDataSource>
Quandovoglio eliminare un record mi dà l'errore:
Si è specificato che il comando elimina confronta tutti i valori su SqlDataSource 'SqlDataSource1', ma il dizionario passato per values è vuoto. Passare un dizionario valido per elimina o modificare la modalità in OverwriteChanges.
Provando a Modificare ConflictDetection="OverwriteChanges" l'errore non compare, ma l'eliminazione non avviene! Stessa cosa se elimino del tutto l'opzione ConflictDetection.
Mentre se sostituisco la listview con un datagrid il problema non si pone, quindi suppongo che il problema non è nella sorgente dati.
Vi ringrazio in anticipo per ogni tentativo di aiuto
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !