2010-09-19 11 views
6

Prima un breve briefing; Sono stato una persona di Delphi per anni e sono stato lontano da C# per due anni. L'ultima cosa che ho fatto in C# è stata un'app DB di medie dimensioni con il mio DAL personalizzato. Cioè, avevo codificato le mie proprie funzioni per recuperare i dati come lista, funzioni per aggiungere dati e così via. Ora mi viene offerto un progetto su piccola scala utilizzando C# WinForms e SQL Server, e c'è una scadenza che è di circa 2 o 3 settimane. Nota che ho dimenticato la sintassi LINQ e molte cose.. ORM netto con la curva di apprendimento più veloce?

Ora, quale ORM sarebbe più facile e veloce da imparare? Posso farcela a non usare il livello di astrazione aziendale, se necessario, per guadagnare tempo. Ho bisogno di qualcosa che possa alleviare il lavoro manuale. Grazie in anticipo.

+0

Le curve di apprendimento per gli ORM sono pressappoco uguali (sono tutte bizzarre e hanno caratteristiche diverse, e l'apprendimento degli ORM in genere richiede la maggior parte del tempo). Non sono sicuro che questa sia la domanda che dovresti davvero chiedere. –

risposta

11

Per l'implementazione rapida, ecc., Guarderei LINQ-to-SQL; la giuria è ancora fuori da chi ritiene che sia pieno di ORM, ma a me non importa; mi consente di mappare i miei dati in modo rapido, semplice, comodo e sicuro, con un supporto IDE/lingua decente. Il LINQ di cui hai generalmente bisogno è piuttosto minimale ... from, where, select, ecc. E impostarlo è solo un caso di dire al progettista delle tabelle/colonne rispetto a clases/proprietà.

+0

@Dragan, per favore sii consapevole che Microsoft sta raccomandando che le persone usino Entity Framework invece di LinqToSql. –

+3

@ Michael e quando portano EF allo stesso livello di funzionalità e facilità che L2S ha goduto per diversi anni, sono sicuro che la gente prenderà in considerazione il passaggio. –

+2

Grazie per aver scritto "The Inconvenient Truth" su EF e L2S –

2

Se fossi in te, sceglierei il framework Entity. È uno strumento ORM abbastanza semplice, facile da implementare, efficiente e di successo. È possibile utilizzare LINQ anche nel framework entità durante il recupero dei dati.

1

Se non ti dispiace un prodotto commerciale, Lightspeed è quasi troppo bello per essere vero. L'ho usato per circa 6 mesi e mi ha aiutato in tutti i modi possibili, dalla progettazione del modello utilizzando uno strumento grafico, alle migrazioni durante l'aggiornamento, l'aggiornamento del database con un solo clic, un buon test delle unità, una facile estensione personalizzata, convalida, ecc. Prova almeno la versione gratuita!

+0

Grazie, ma avrei bisogno di qualcosa di gratuito come in birra o gratuito come in discorso per risparmiare sui costi. – Dragan

2

Come un recente sviluppatore ex Delphi, sono stato stupito dall'uso di MyGeneration per generare classi DAL/BLL di base da un database esistente, tramite modelli personalizzati. Prende un sacco di fatica dal compito.

Ho anche visto alcuni elogi per Business Logic Toolkit for .NET. La sua architettura semplice e pulita e la sua piccola curva di apprendimento lo rendono molto attraente. Non proprio ORM, ma ti rimetterà in moto rapidamente.

Se cerchi qui i termini C#/ORM, troverai molti dibattiti vivaci e interessanti!

Choosing Database and ORM for a .NET project Some suggestions on which .NET ORM to look at learning https://stackoverflow.com/questions/132676/which-orm-for-net-would-you-recommend https://stackoverflow.com/questions/146087/best-performing-orm-for-net

+0

+1 per bl toolkit – sirmak

1

Ho un progetto in .NET e MySQL. Ho imparato Devart LinqConnect in tre settimane per completarlo. Tutte le funzionalità LINQ, ampio supporto di MySQL, supporto di alta qualità - come questo prodotto.

Problemi correlati