Actualmente estamos evaluando el nuevo Visual Studio 2015 y encontramos un extraño problema con IntelliSense. Cuando compilé nuestra solución principal con el nuevo estudio, la compilación tuvo éxito, pero sin embargo, se muestran 6 errores.
Descubrí que no es un error real, sino solo un error inteligente. El código es definitivamente correcto y todo se compiló con éxito. Sin embargo, el código está marcado en rojo y los errores aparecen en la lista de errores.
Los 6 errores tienen el mismo origen. Es una simple llamada de constructor. Es bastante extraño, pero también hay algunas ocurrencias del mismo constructor sin ningún error.
El mensaje de error:
Code: CS1729
Message: '<the class>' does not contain a constructor that takes that many arguments.
Project: <the project name>
File: <the path to the file>
El nuevo estudio se instaló en un Windows 7 recién instalado sin ningún software heredado (no VS13).
Ya he intentado borrar los cachés, eliminé el archivo suo, eliminé los directorios bin y obj, limpié y reconstruí la solución, etc. Pero nada funcionó.
¿Alguien puede explicarme ese comportamiento?
Respuestas:
También tuve este problema con un proyecto migrado, así que hice referencia al archivo dll Microsoft.CSharp. En algunos proyectos, necesitaba eliminar y agregar nuevamente la Referencia en el proyecto.
fuente
Tuve miles de errores intellisense y 0 errores de compilación. Después de eliminar el
.suo
archivo y reiniciar VS, los errores intellisense desaparecen.Suo
el archivo se encuentra relativamente a la fuente en:.vs\SolutionName\v14\.suo
Según el comentario: Cuidado con que
*.suo
es un archivo oculto.Editar: según los comentarios, VS2017 tiene el mismo problema, por lo que puede usar una solución similar: Eliminar.
vs\SolutionName\v15\.suo
fuente
*.suo
archivos pueden estar ocultos en algunos casos. Por lo tanto, debe habilitar laView Hidden files
opción del explorador de Windows.<%=Foo%>
decir que la variable no está declarada, pero todo funciona en tiempo de ejecución.Se encontró con un problema similar en Visual Studio 2017 ASP.Net Core Project. Los siguientes pasos me ayudaron
fuente
Problema similar a otros, pero diferente resolución. Publicar en caso de que pueda ayudar a alguien más.
Ejecución de Visual Studio 2017 15.5.2. Yo uso Git y con frecuencia cambio de ramas. Hace varias semanas, comencé a hacer que los editores me mostraran errores (todos relacionados con tipos que no podía encontrar a pesar de que las referencias eran válidas). Compilar funcionó muy bien. Confirmé el mismo problema en VS 2017 15.6 Preview (6 de enero de 2018). Intentaría eliminar la memoria caché, los archivos SUO o las carpetas bin / obj sin ningún impacto. Al principio parecería funcionar. Vuelva a abrir Visual Studio y todo se vería bien. Utilice "Reconstruir solución" y los errores de IntelliSense volverían. Incluso intenté desinstalar / reinstalar Visual Studio.
Tuve el mismo problema en dos máquinas, ambas con la misma versión de Visual Studio.
Al observar los errores sobre los tipos faltantes, todos parecían provenir de dos proyectos referenciados. Una de esas referencias era un proyecto compartido utilizado por casi cualquier otro proyecto en la solución, pero uno de ellos era un proyecto pequeño sin muchas referencias. Sucede que el proyecto pequeño también fue referenciado por mi proyecto compartido más grande. En Visual Studio, descargué el pequeño proyecto y lo volví a cargar. Los errores se fueron! Los errores no volvieron en Reconstruir solución.
Luego cambié las ramas de Git y todos los errores volvieron. Afortunadamente, repetí los pasos anteriores de descarga / recarga del pequeño proyecto y los errores desaparecieron.
Cada vez que cambio las ramas de Git, los errores regresan hasta que repito ese proceso. Hay cero cambios entre las ramas de Git para el proyecto más pequeño que descargo / recargo. No está claro por qué esa secuencia está solucionando mi problema.
fuente
También tuve este problema (el título, no el mensaje de error específico), así como líneas onduladas en el editor. La primera línea ondulada está debajo de la primera
#include
instrucción, que nombra un encabezado precompilado. Intellisense no puede incluir el encabezado precompilado, pero no lo enumera como un error; en su lugar, enumera los errores más abajo en el archivo, en un código que (con mucha razón) se basa en declaraciones en el encabezado precompilado.La razón por la que Intellisense no encuentra el encabezado precompilado en mi entorno es porque el encabezado nombrado no es un archivo real. No tiene que estar en ninguna otra versión de VC o gcc que use, ni en el compilador de 2015, siempre que la configuración del encabezado precompilado esté configurada correctamente. Aparentemente ya no es para Intellisense. No estoy completamente seguro de que fuera diferente en 2013, tal vez nunca lo noté.
En el caso poco probable de que este sea el problema que se informa aquí, la solución es simple: cree un pequeño archivo con el nombre simulado del encabezado precompilado, como se especifica en las
#include
directivas, y deje que ese archivo incluya el nombre real del encabezado precompilado.Si se pregunta ... ¿por qué esta distinción entre el nombre del encabezado precompilado en la instrucción '#include' y el nombre de archivo real del encabezado precompilado? Precisamente porque garantiza que la configuración del encabezado precompilado está configurada correctamente. Donde sea que un encabezado precompilado esté "#incluido", no se puede incluir ningún archivo. Se lee una versión realmente precompilada (binaria) del encabezado real o la compilación falla. Obviamente, una desventaja es que confunde personas que leen el código, no solo a Intellisense.
fuente
Visual Studio 2017 He eliminado el archivo ".suo" de la ubicación .vs \ SolutionName \ v15.suo Y luego reinicié Visual studio. Esto funcionó para mí.
fuente
Hoy he tenido un problema similar con MSVC ++ 2015. Casi me doy por vencido y decidí continuar sin sugerencias de IDE, pero de repente me di cuenta de que stdafx.h del proyecto con el que tuve problemas no contiene ningún encabezado de biblioteca estándar. He especulado que la inclusión de todos los encabezados estándar utilizados en el proyecto en stdafx.h podría aumentar la velocidad de compilación, pero al hacerlo también se corrigieron los errores de Intellisense.
fuente
Tuve múltiples
stdfax.h
en directorios de inclusión adicionales. Asegúrese de que lostdafx.h
que pretendía sea el primero en su camino.fuente
Tuve un problema similar con diferentes versiones de Visual Studio.
Eliminar la carpeta .suo o .vs no me ayudó.
La solución para mí fue que tenía la extensión StopOnFirstBuildError activa. Después de desactivar "Detener compilación en el primer error" en el menú de compilación, y después de que la solución se compila por completo, los errores mostrados por Intellisense desaparecieron.
fuente
Estaba viendo los errores de intellisearch solo cuando publicaba un sitio web. (Sitio ASP / C #, VS 2017). Rompieron la publicación. El sitio funcionó bien localmente.
Borró los errores desmarcando la configuración para precompilar, y se publicó bien. Publicar -> Configuración -> Opciones de publicación de archivos -> Precompilar durante la publicación
fuente
En Visual Studio 2019, el problema es cambiar ramas con Git cuando hay paquetes NuGet instalados en el proyecto. Lo que hice para resolver esto:
fuente