Recientemente tuvimos una visita de contratista que cuestionó nuestra metodología de estructuración de proyectos. Tenga en cuenta que me estoy refiriendo específicamente a la estructura del directorio. Sugirió usar las pautas de Microsoft. Pensé que sería capaz de buscar en Google "la estructura de directorios del proyecto .NET de las directrices de Microsoft" y encontrar algo útil, sin embargo, esto ha demostrado no ser el caso. Tal como están las cosas, hacemos algo como esto:
[Company.System.Feature]
|-doc
|Sandcastle project
|-lib
|Nuget packages
|-src
|-Project1 e.g. web
|-Project2 e.g. business logic
|-UnittestProject1
|-Specs
La carpeta doc contiene una solución de Sandcastle como la que se describe aquí: https://www.codeproject.com/Articles/15176/Sandcastle-Help-File-Builder (ver: rutas absolutas y relativas). Por lo tanto, la carpeta doc contiene una carpeta de Ayuda, que contiene el archivo de ayuda generado. La carpeta lib contiene todos los paquetes Nuget.
¿Hay alguna directriz de Microsoft que recomiende cómo estructurar una solución? He buscado aquí: /programming/789389/project-structure-for-c-sharp-development-effort/789554?noredirect=1#comment86756309_789554 entre otros lugares. La mayoría de los artículos y preguntas que he leído parecen haber sido creados entre 2007 y 2009. Creo que Nuget se introdujo en 2010. ¿Hay alguna guía de Microsoft? Leí sobre algo llamado Tree Surgeon, sin embargo, esto ya no parece existir: https://archive.codeplex.com/?p=treesurgeon .
Estoy usando TFS; Control de crucero y DDD es lo que hace la diferencia.
packages
proyectos dotnetcore y VS2017. Ahora viven en los obj
directorios de los proyectos .