my.ASPItalia.com
ASP.NET
|
HTML5
|
LINQ e Entity Framework
|
Silverlight
|
Windows Phone
|
.NET Framework
|
Windows 8
|
Libro WP7
|
Libro HTML5
|
Corso HTML5
Iscriviti
Login
Newsletter
Home
Articoli
Script
Notizie
FORUM
Blogs
Media
Tutorials
Corsi
Libri
Eventi
Tags
Tutti i forum
Ricerca
FAQ
Fai una domanda
Entity Framework, evitare di inserire una riga duplicata
in
.NET Framework
>
Windows Presentation Foundation e WinForms
Ultimo messaggio
federico.caselli
il 12 dicembre 2008 alle 18:17
40 messaggi
dal 10 maggio 2005
Ciao,
vorrei cominciare a lavorare con entity framework, sto partendo con una finestra wpf collegata ad una entity. La entity è mappata ad una tabella di sql. Il campo CODICE è una chiave primaria (non surrogata), la proprietà Entity key è impostata a true.
Il primo problema che ho incontrato è che inserendo un record con il campo CODICE già esistente, la mia applicazione non si accorge di niente e, ovviamente, va in errore al momento della chiamata Context.SaveChanges().
Qualcuno sa come si evita l'inserimento di duplicati?
Grazie!
Rispondi
Quoting
Ricciolo
il 15 dicembre 2008 alle 12:24
5.561 messaggi
dal 26 febbraio 2001
Contributi
blogs.aspitalia.com
|
Blog
Teoricamente non è un compito che spetta allo strato di accesso ai dati. In un'applicazione n-tier è lo strato intermedio di business che valida queste logiche, controllando ciò che quello di presentazione richiede.
Se questo non l'hai previsto, puoi o affidarti al db e quindi gestire l'errore quando chiami SaveChanges oppure magari sovrascrivere i metodi On[nomeProprietà]Changing partial che sono definiti nella classe autogenerata.
Io comunque ti consiglio lo strato business intermedio.
Ciao
Il mio blog
Homepage
Rispondi
Quoting
federico.caselli
il 16 dicembre 2008 alle 09:18
40 messaggi
dal 10 maggio 2005
Avevo iniziato proprio con On[nomeProprietà]Changing partial, ma mi sono fermato subito, perchè non so come si accede alla EntitySet, che mi servirebbe per controllarele se le altre istanze della entity hanno già lo stesso valore. Così ho desistito. C'è davvero un modo?
Modificato da federico.caselli
il 16 dicembre 2008 09.19 -
Rispondi
Quoting
Ricciolo
il 16 dicembre 2008 alle 09:30
5.561 messaggi
dal 26 febbraio 2001
Contributi
blogs.aspitalia.com
|
Blog
Beh io la via più corretta te l'ho indicata
Ciao
Il mio blog
Homepage
Rispondi
Quoting
federico.caselli
il 16 dicembre 2008 alle 10:38
40 messaggi
dal 10 maggio 2005
Ma il metodo On[nomeProprietà]Changing non è nello strato intermedio di business? Il compito di EF non è proprio quello di generare le classi di business?
Il problema è che non so cosa scriverci dentro...
Rispondi
Quoting
Ricciolo
il 17 dicembre 2008 alle 14:58
5.561 messaggi
dal 26 febbraio 2001
Contributi
blogs.aspitalia.com
|
Blog
No no, entity framework è lo strato di accesso ai dati, non è business. Poi se vuoi considerare le entità di entity framework come il tuo domain model indipendente dalla persistenza, puoi anche farlo, ma comunque le logiche di validazione di cui tu hai bisogno andrebbero messe su uno strato che sta sopra
Ciao
Il mio blog
Homepage
Rispondi
Quoting
federico.caselli
il 17 dicembre 2008 alle 16:50
40 messaggi
dal 10 maggio 2005
Ah.
Me ne vado a studiare e torno più preparato
Rispondi
Quoting
Salto rapido
Ultimi messaggi
Tutti i forum
Ricerca
Utenti online
ASP.NET
ASP.NET 2.0
ASP.NET 3.5
ASP.NET 4.0
.NET Framework
Silverlight
Windows Phone
Windows Presentation Foundation e WinForms
Windows Communication e Workflow
ASP - avanzato
ASP - base
SQL Server e MySQL
E-commerce
Hosting
Altri linguaggi e tecnologie
Windows Server, IIS & Security
Libri
OT
Commenti: blogs e notizie
Eventi
Torna al forum
| Feed
RSS
ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.
Community
Effettua il login!
Hai dimenticato la password?
Ultimi messaggi
Ordinamento Colonne Datagridview
(2)
metodo process per stampare più copie.
(2)
Attivare una PageFunction
(1)
UTENTI ONLINE
In primo piano
Annunciate le versioni ufficiali di Visual Studio 11
Rilasciato Visual Studio 11 Beta: scopri tutte le novità!
Windows 8 Consumer Preview: segui con noi la diretta
I più letti di oggi
Sviluppare applicazioni web mobile con HTML5 e jQuery mobile
Web Camp - ASP.NET MVC 3 (Community Days 2012)
Applicazioni Metro con XAML: cosa cambia per lo sviluppatore .NET con Windows 8
Effettuare il backup dell'event viewer con LINQ to XML
Aprire una popup in Silverlight
Introduzione ad Entity Framework
Disegnare un'applicazione a servizi con Entity Framework e WCF
Media
Sviluppare applicazioni web mobile con HTML5 e jQuery mobile
Metro Style App per Windows 8 con HTML e Javascript
Tutti i media
In evidenza
Dal 29 febbraio arriva WinRTItalia.com: tutto sullo sviluppo per Windows 8 e Metro
Aprire una popup in Silverlight
Sviluppare applicazioni web mobile con HTML5 e jQuery mobile
Disegnare un'applicazione a servizi con Entity Framework e WCF
Il nuovo tag time in HTML5
Salvare e leggere rapidamente le impostazioni di un'applicazione Windows Phone
Metro Style App per Windows 8 con HTML e Javascript
Aggiungere un handler globale per le chiamate AJAX di ASP.NET MVC
MISC
I nostri autori
Collabora con noi!
Media Kit - Pubblicità sul nostro network