2010-05-07 10 views
5

Sto sviluppando un'applicazione ASP.NET MVC e ho cercato di utilizzare le annotazioni di dati sui miei POCO definiti nel mio livello di servizio. Finché ho un riferimento a System.ComponentModel & System.ComponentModel.DataAnnotations questo non è un problema e ciò che mi piace di questo è che mi permette di riutilizzare il mio livello di servizio in un'app Win Form.Utilizzo di annotazioni di dati su POCO con MVC per la convalida remota

Ora sto cercando di fare un po 'di validazione a distanza utilizzando le annotazioni di dati e hanno dato un'occhiata a questo articolo: http://msdn.microsoft.com/en-us/library/ff398048(VS.100).aspx

Tuttavia, per utilizzare l'annotazioni dei dati in questo contesto ho bisogno di fare riferimento System.Web.Mvc , System.Web e System.Web.Routing. Questo introduce una dipendenza dalle DLL Web, che mi limita un po '.

Qualcuno può consigliare un buon metodo pulito per implementare la convalida dei dati in remoto utilizzando le Annotazioni dei dati che non è accoppiato con ASP.NET MVC o forse suggerisce un'alternativa migliore.

Grazie per l'aiuto!

+0

Perché la dipendenza dalla DLL Web ti limita? –

+0

Ciao Rob, mi viene davvero in mente se sto costruendo applicazioni per moduli di vittoria, quindi non ho davvero bisogno di riferimenti alle DLL Web. La mia comprensione è che DataAnnotations richiedeva solo riferimenti agli spazi dei nomi System.ComponentModel & ComponentModel.DataAnnotations. Nel tutorial menzionato è specifico legato alla convalida Client & Server, sto solo provando a fare la parte di convalida del Server, se questo ha senso? –

+0

Sì ... l'articolo fa schifo. Cercherò di trovare una soluzione più pulita visto che ho le mie Entità anche in un'assemblea separata. Tornerò se ci riuscirò. –

risposta

2

Ho risolto questo problema alla fine evitando di mettere DataAnnotations sui miei POCO e invece li ho messi sul mio ViewModels e uso AutoMapper per mappare tra il mio ViewModel e POCO (che mi risparmia un po 'di tempo facendo mappature noiose). C'è un ottimo video su Automapper qui http://perseus.franklins.net/dnrtvplayer/player.aspx?ShowNum=0155

+0

Link non funziona più – JustJohn

Problemi correlati