
¿Qué significan estos tres puntos grises? Recientemente actualicé a Visual Studio 2017 y nunca los he visto en otras versiones de VS.
Indican una sugerencia de Visual Studio para refactorizar su código para que sea más simple, legible y eficiente. Consulte la sección Acciones rápidas y refactorizaciones de las Notas de la versión de Visual Studio 2017 (versión 15.0) .
Solo para dejar doblemente claro a los programadores novatos, estos no son mensajes de error en ningún sentido. Son simplemente sugerencias para un código más "legible y eficiente" como afirma @Oleksander.
Algunos pueden no ser los mejores consejos para tu aplicación, a diferencia de los mensajes de advertencia o de error, que al menos en mi caso casi el 100% lo son.
Tuve una sugerencia en una aplicación C# del motor de juegos de Unity para hacer una variable de "solo lectura". No estoy seguro de que en mi caso haya una diferencia práctica si esto es de solo lectura o no, ya que en este caso creo que es bastante obvio en el contexto: una variable privada que se serializa y se puede configurar en el programa editor del juego, nadie probablemente creará nuevo método en esta clase de administrador de escena de juego para modificar/asignar esta variable. Del mismo modo, sugirió crear una propiedad para un campo privado de clase, lo que creo que es una exageración de código adicional.
Como mínimo, estos son mensajes de baja prioridad para la acción.
Supresión de símbolos de 3 puntos en Visual Studio
Si hace clic derecho y lee una de estas sugerencias, puede encontrar una opción para suprimir estos mensajes en el archivo de proyecto global, con varios parámetros opcionales. Entonces, por ejemplo, en mi caso, ahora no quiero sugerencias de mensajes de solo lectura para todo el proyecto (¡bienvenido, corríjame si es una mala idea!), así que en la raíz del proyecto, al mismo nivel que el archivo de solución .sln, . csproj, archivo .git en mi caso para el proyecto C#, guarda el archivo llamado "GlobalSuppressions.cs". La ubicación de la raíz y este nombre de archivo exacto son presumiblemente cruciales.
Supongo que si quieres evitar que los futuros codificadores/futuros te preocupes o pierdas tiempo en estos mensajes de 3 puntos cuando crees que es una pérdida de tiempo, podría ser útil. En mi caso, para deshacerme de todas las sugerencias de palabras clave de "solo lectura" en este proyecto, el código es (los comentarios son comentarios automáticos VS):
// This file is used by Code Analysis to maintain SuppressMessage // attributes that are applied to this project. // Project-level suppressions either have no target or are given // a specific target and scoped to a namespace, type, member, etc. [assembly: System.Diagnostics.CodeAnalysis.SuppressMessage("Style", "IDE0044:Add readonly modifier")]