visual una studio solucion que proyectos introduccion hechos funciona entorno como caracteristicas c# visual-studio assemblies projects-and-solutions

c# - solucion - ¿Cómo guardar archivos DLL en una carpeta diferente al compilar en Visual Studio?



visual basic proyectos hechos (5)

Encontrará las mejores prácticas para organizar referencias de proyectos aquí: http://codebetter.com/patricksmacchia/2009/01/11/lessons-learned-from-the-nunit-code-base/

Consulte el capítulo "La opción Ver el Proyecto de Visual Studio + Copiar local verdadero es malo".

Supongamos que tengo un proyecto Window Forms / Console Application C # con algunas referencias externas y referencias a otros proyectos de biblioteca de clases en la misma solución también.

Cuando construyo el proyecto Window Form , quiero que las bibliotecas a las que se hace referencia se almacenen en una ubicación diferente (por ejemplo, bin / Release / Libraries ) y no en la misma carpeta que el .exe .

Es posible de hacer?


Establezca la ruta de referencia en las propiedades del proyecto.

También puede especificar dónde va su ejecutable compilado especificando la ruta de salida en las propiedades del proyecto.


Hay 2 partes de su pregunta:

Cómo configurar soluciones para compilar ensamblados / EXE en carpetas de su elección: esto se configura a través de las propiedades del proyecto en VS (propiedades del proyecto -> compilación -> ruta de salida). También valor de la propiedad "copiar local" de verificación en cada referencia.

Cómo cargar archivos ensamblados desde ubicaciones no predeterminadas (es decir, desde la carpeta ... / Bibliotecas): debe realizar cambios en su archivo app.config para agregar estas rutas no predeterminadas a la ubicación de búsqueda de ensamblaje ( http://support.microsoft.com/kb/837908 ).


Las respuestas correctas se dieron antes. Solo mencionaré que hay un paquete nuget para esto llamado PrettyBin .

Instálalo en tu proyecto de inicio. Los archivos DLL y XML irán a una carpeta lib y tendrás un ejemplo de cómo funciona, si no quieres personalizarlos.