Es posible hacer una solución de VS dependen (es decir, incluir) toda otra solución? He visto algunas cosas acerca de la «Solución de Carpetas», pero estos no parecen ser la misma cosa….? Gracias! (Por CIERTO, estoy usando VS 2008)

5 Comentarios

  1. 12

    Este post es viejo, pero en estos días puede volver fácilmente a las dependencias en otras soluciones mediante la construcción de paquetes de nuget para todos ellos. VS 2015 tiene paquete de nuget edificio construido en pero en la actualidad es una Release Candidate. En Visual Studio 2013, usted puede utilizar el Nuget.Embalaje del paquete de nuget para permitir que el proyecto para construir un Paquete de Nuget.

    Entonces usted puede publicar nuevas versiones de paquetes a un recurso compartido de red local y configurar como un Repositorio en Visual Studio.

    El resto de la solución de los proyectos dependen de ese paquete.

    Por ejemplo, supongamos que tiene un reutilizables Utilidad de DLL en una Solución Llamada «Core Framework» y desea utilizar una utilidad de allí, en un sitio Web que usted está construyendo en una solución llamada «XYZEcosystem».

    En el CoreFramework solución sería construir un paquete de nuget para el Proyecto de Utilidad que compila la utilidad de dll e incluir la dll y el archivo pdb en el paquete.

    Luego de publicar que a su recurso compartido de red.

    Así que digamos que su paquete tiene un ID como «XYZ.Núcleo.Los servicios públicos» con una versión de 1.0.0.0.

    Ahora en XYZEcosystem tendría que usar la consola del administrador de paquetes, establecer el repositorio de bajar a su repositorio y el tipo de «Instalar Paquete XYZ.Núcleo.Los servicios públicos» y se instalará la versión más reciente de XYZ.Núcleo.Las utilidades.

    Si usted hace un cambio a XYZ.Núcleo.De las utilidades puede ejecutar Update-Paquete XYZ.Núcleo.Utilidades en XYZEcosystem y recogerá la nueva versión.

  2. 19

    No realmente. Usted tendría que hacer uno de los siguientes:

    • Hacer un script de generación que construye las soluciones en el orden correcto.
    • De Pre-construcción de la solución, y sólo se hace referencia a la construida salidas binarias en la solución B.
    • Hacer una tercera solución que contiene todos los proyectos de ambas soluciones.

    Los dos primeros elementos son los más comunes, donde yo personalmente prefiero la segunda.

    • suspiro… OK; gracias!
    • Pero ver la respuesta de net_prog
    • Parece que esta realmente fue posible en 2009. En cualquier caso, espero que sea mejorado en 2015.
  3. 0

    Una solución es una colección de asambleas que construir para crear algún tipo de ejecutable o dll. Tener una solución de depender de otra no tiene sentido. La salida de la asamblea (ejecutable o dll) depende de las asambleas a los que hace referencia. Si la solución depende de otras asambleas, a continuación, se hace referencia a ellos. Usted puede agregar proyectos para su solución (Archivo>Agregar>Proyecto Existente) y, a continuación, puede agregar refences estos proyectos a partir de su salida del proyecto.

  4. 0

    Usted no puede hacer eso. Y ¿por qué quieres?

    Basta con añadir todos los proyectos que dependen de (los proyectos en los ‘otros’ solución) a la solución.

    A continuación, utilice referencias de proyecto (no las referencias del archivo) entre los proyectos.

    • Quiero depender de otra solución para los que no tengo control. Si esa solución se actualiza para incluir otro proyecto, quiero que se tienen en cuenta automáticamente.
    • En ese caso, ya sea: Crear un script que genera automáticamente su archivo de solución. O agregar manualmente los proyectos para su solución, y crear un script que valida que todos los proyectos son en la solución. Los archivos de la solución son simples archivos de texto con un simple estructura.
    • Uno quisiera para si el árbol de dependencia fue profundo y complejo, aunque un mecanismo fuera de VS que asegura dependiente de dll son a la fecha y en el lugar correcto ahorraría un montón de tiempo de compilación si los archivos dll están disponibles en un centro de control repositorio.

Dejar respuesta

Please enter your comment!
Please enter your name here