¿Por qué la opción" Establecer como inicio " se almacena en el archivo suo y no en el archivo sln?


Parece que esta configuración debe almacenarse en el archivo de la solución para que se comparta entre todos los usuarios y forme parte del control del código fuente. Dado que no registramos el archivo suo, cada usuario tiene que establecer esto por separado, lo que parece extraño.

Author: Kara, 2009-03-29

5 answers

¿Por qué debería ser una preferencia no específica del usuario?

Si tengo una solución con 10 archivos, y un desarrollador está principalmente probando/usando una de esas herramientas, ¿por qué debería afectar lo que inicio?

Creo que MS tomó la decisión correcta en este caso. El proyecto que yo quiero iniciar está lejos de ser necesariamente el proyecto que otros desarrolladores quieren iniciar.

 44
Author: Jon Skeet,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-03-29 14:54:46

Es absolutamente necesario que cada uno pueda definir su Proyecto de inicio por sí mismo, como Jon ya ha dicho. Pero tener un predeterminado dedicado sería genial, y como puedo decir, ¡es posible!

Si no tienes una .archivo suo en su directorio de soluciones, Visual Studio selecciona el primer proyecto en su .archivo sln como proyecto de inicio predeterminado.

  1. Cierre Visual Studio y abra el .archivo sln en su editor de texto favorito. Empezando en línea 4, usted ve todos sus proyectos encapsulados en ProjectEndProject líneas.

  2. Corta y pega el proyecto de inicio predeterminado deseado en la posición superior.

  3. Borra tu .archivo suo.

  4. Abra su solución en Visual Studio. Ta daa!

¿Hay un premio especial si sabes algo que Jon no sabe? ;-)

 339
Author: Oliver,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-23 10:31:37

En la mayoría de los casos, tiene sentido tener un valor predeterminado en esto.

Sería mucho mejor acomodar un proyecto de inicio predeterminado y almacenar esto en el .archivo sln, pero que puede ser anulado por un desarrollador en su .archivo suo. Si la configuración de inicio no se encuentra en el .archivo suo, el proyecto de inicio predeterminado en el.se usaría sln.

En realidad, esto ha sido sugerido en la opción de usuario de Visual Studio.

 43
Author: Wim Hollebrandse,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-02-27 12:07:41

Escribí una pequeña utilidad de línea de comandos para Windows llamada slnStartupProject para configurar el Proyecto de inicio automáticamente:

slnStartupProject slnFilename projectName

Lo uso personalmente para establecer el proyecto de inicio después de generar la solución con cmake que siempre establece un proyecto ficticio ALL_BUILD como el primer proyecto en la solución.

La fuente está en GitHub. Tenedores y comentarios son bienvenidos.

 3
Author: michaK,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-02-27 12:16:38

Si estás usando GIT, puedes confirmar el archivo SUO predeterminado y luego marcarlo como sin cambios usando

git update-index --assume-unchanged YourSolution.suo

También funciona si desea tener más de un proyecto en su grupo de inicio predeterminado. La única desventaja que conozco es que este comando debe ser ejecutado por todos los que no quieran confirmar el archivo SUO.

 2
Author: sebetovsky,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-03-10 08:32:42