2009-04-01 7 views
12

Come dice il titolo, sono interessato a sapere in che modo strutturate le vostre soluzioni ASP.NET.Struttura tipica di una soluzione ASP.NET?

Sono particolarmente interessato a ASP.NET WebSite soluzioni, ma le informazioni si attestano altri tipi (WebApplication, MVC) potrebbe essere interessante.

alcune domande specifiche:

  • cosa/come molti progetti/assemblee fa la soluzione contiene
  • come si fa il nome vostri progetti libreria di classi
  • cosa namespace fare è in genere necessario
  • si fa avere più spazi dei nomi per progetto/assemblaggio o hai una stretta relazione 1: 1
  • ecc.

Grazie

risposta

4

Uno dei miei progetti assomiglia:

  • Sln
    • Sln.Core
    • Sln.Core.Test
    • Sln.Data
    • Sln.Data.Test
    • Sln.Web
    • Sln.Web.Test

Core è i servizi modello del dominio e del dominio, nella misura in cui può essere fatto senza fare un passo in persistenza. I dati sono il livello di persistenza, che in pratica significa definizioni di FluentNHibernate e implementazioni concrete di interfacce definite in Core. Il Web è il livello front-end.

+0

mi hai letto nella mente. – craigmoliver

1

Io di solito uso il nome dell'applicazione per un nome di soluzione (utilizzando la "Soluzione" tipo di progetto generico), poi hanno SolutionName.Site, SolutionName.Domain, SolutionName.Persistence, ecc ... i progetti che contiene. Sembra che sia più facile gestire tutti i riferimenti.

Mi piacerebbe vedere le risposte di altre persone però. Mentre questo è il modo migliore che ho trovato non riesco a scuotere la sensazione che potrebbe esserci uno migliore.

3

Ho fatto qualcosa di simile alla giustizia. Ma con un minor numero di progetti (e più veloce tempo di compilazione)

Sln

  • Project.Core
  • Project.Web
  • Project.Test

Project.Nucleo sarà simile a questa

  • Repository
  • Domain
  • Presentatore
  • Servizio
  • View
  • comune

Non ho davvero ottenere un beneficio da più (più di 3) progetti. Non ottieni testablility e i tuoi tempi di compilazione diventano molto più lunghi.

Inoltre, la prima cosa che faccio quando ottengo un progetto di sito Web è convertirlo in un'applicazione web. Ma nel complesso, i miei progetti non cambiano quando cambio tra Siti Web e Applicazioni Web.

Problemi correlati