2009-11-17 17 views
7

Come stated in another post S # arp Architettura combina ASP.NET MVC con altri framework e strumenti comeMicrosoft alternativa al S # arp Architettura e tecnologie di base

  • NHibernate 2.0.1
  • NHibernate.Validator
  • Fluent NHibernate
  • Castello di Windsor
  • Rhino Mocks

Capisco che sia meno di un framework e più di una serie di best practice, che supportano il DDD e incoraggino il TDD in ogni fase del processo.

Tuttavia, tutti gli strumenti e le strutture su cui si basa S # arp sono prodotti di terze parti supportati dalla comunità. Anche se non metto in discussione né la qualità di questi prodotti, né l'impegno delle persone che li supportano, sarebbe interessante vedere se Microsoft offrirà un'alternativa a questo approccio.

Capisco che EF v4.0 riuscirà a coprire la maggior parte delle carenze delle sue versioni precedenti e che MVC verrà aggiornato alla sua prossima versione, ma ancora, questo è lontano dalla soluzione completa offerta da S # arp e i suoi componenti.

Quindi, che ne è della risposta di Microsoft all'architettura S # arp?

risposta

10

NHibernate 2.0.1
Linq to Sql (ora redundent come è stato sostituito con Linq to Entities)

NHibernate.Validator
Non c'è equivalente ufficiale. ASP.NET MVC 2.0 ha validation (cercare DataAnnotation Validation Support) e ValidationAspects funziona con Unity.

Aggiornamento: infatti, DataAnnotations non sono una cosa MVC ma parte di System.ComponentModel introdotto in 3.5 SP1.

Fluent NHibernate
Non aveva bisogno, come LINQ to XML di SQL e codice sottostante viene generato dal progettista.

Castello di Windsor
Microsoft Unity

Rhino Mocks
Microsoft non dispone di un motore di beffardo, anche se MOQ è prodotto da un Microsoft MVP.

+1

+1 per una risposta completa :-) –

+0

Una risposta completa davvero :) Anche se direi che l'Entity Framework è l'alternativa di NHibernate. Linq to Entities è un grande facilitatore per l'accesso e l'interrogazione di tali Entità, qualcosa che non è ancora ufficialmente supportato da NHibernate –

+1

Come nota a margine, "Microsoft MVP" non è necessariamente una persona associata a Microsoft in alcun modo diverso dall'essere un esperto in alcune tecnologie MS e riconosciute come tali dalla stessa MS. –

1

Microsoft fornisce The Unity Application Block per un contenitore di iniezione dipendenza se si sta cercando l'alternativa Microsoft al contenitore Castle Windsor.

+0

Grande, grazie per il puntatore! –