visual studio professional net microsoft descargar c# .net visual-studio visual-studio-2010

c# - studio - Las referencias de ensamblaje aleatorio fallan("¿Falta una directiva de uso o una referencia de ensamblado?")



visual studio express 2012 (7)

Mi aplicación tiene una mezcla de conjuntos de 3.5 y 4.0. Estoy trabajando en un nuevo servicio de Windows dirigido a 4.0 y el proyecto de repente parece incapaz de ver algunos de los otros ensambles en la solución. Es decir, en la creación, todas las referencias a estos otros ensamblados determinados producen el siguiente error:

El tipo o el nombre del espacio de nombres ''[X]'' no existe en el espacio de nombres ''[Y]'' (¿falta una referencia de ensamblado?)

Si elimino la referencia del proyecto y la vuelvo a agregar, los squigglies rojos desaparecen e Intellisense vuelve a activarse como se suponía. Todos los otros proyectos en la solución se crean sin problemas. Pero tan pronto como trato de construir este nuevo proyecto, los errores vuelven.

Una de las referencias anómalas es para nuestro Core.dll, que apunta a 3.5. Recientemente, agregamos un CoreEx.dll dirigido a 4.0, con espacio de nombres compartidos entre los ensamblados. El nuevo servicio puede ver CoreEx.dll pero no Core.dll ... es decir, cuando empiezo a escribir using Core.Utilities... Intellisense se using Core.Utilities... en el conjunto más pequeño de espacios de nombres de CoreEx.dll pero no muestra ninguno que aparezca solo en Core.dll. Estoy bastante seguro de que la solución se desarrolló correctamente después de agregar esto, pero es un cambio notable reciente.

Otra referencia anómala es nuestro Core Data.dll, que contiene un conjunto de datasets y material de Entity Framework. Este fue migrado recientemente a 4.0. Nuevamente, estoy casi seguro de que la solución fue construida después de migrar el proyecto, pero vale la pena mencionarlo.

La última referencia que falla es un ensamblado que usa el espacio de nombres un nivel "arriba" del servicio. Por ejemplo, el proyecto problemático se basa en el espacio de nombres ProductName.Component.ComponentService y no puede ver el proyecto basado en el espacio de nombres ProductName.Component . Este fue creado recientemente junto con el proyecto problemático y también tiene como objetivo 4.0.

Como puede ver, no parece haber ninguna rima o razón por la cual las referencias de ensamblado estén fallando ... y el proyecto problemático puede hacer referencia con éxito a algunos de los otros ensambles de la solución. He intentado limpiar, reconstruir, reiniciar Visual Studio ... nada lo ha solucionado de forma permanente. ¿Qué podría estar causando esto?


¿Las dependencias están configuradas correctamente en la solución? He visto más de una ocasión en que el Proyecto A depende del Proyecto B, pero debido a que no se estableció la dependencia entre los dos, la compilación falla esporádicamente.

La causa subyacente en este caso es que la compilación es el orden no es determinista y el éxito / fracaso depende de cosas como qué proyectos se crean (en función de qué cambió) y qué compilaciones primero (cuando hay más compilaciones).


Estaba agregando proyectos a una Solución que utiliza .net 4.5. Los proyectos que había agregado estaban predeterminados a 4.5.1. Esto representaba 4.5 bibliotecas incompatibles con los nuevos proyectos. Ingresé a las propiedades de mis nuevos proyectos y los hice apuntar a 4.5 en lugar del 4.5.1 predeterminado. Después de haber hecho eso, mi solución fue capaz de construir.


Este problema me pasó una vez que lo resolví eliminando todas las instrucciones de uso en la parte superior y escribiéndolas manualmente de nuevo.


Me funcionó cuando cambié el marco de destino a 4.0 ... Pero esa no era la solución que queríamos ... Queríamos usar VS 2010 Premium para nuestro proyecto, pero la intención NO era utilizar .NET 4.0 ... La clase principal proyecto de biblioteca (.net 2.0) hacía referencia al dll "system.web.abstractions.dll" ... Agregué la referencia a este dll en otros proyectos (.net 2.0) que hace referencia a la biblioteca principal de clases ... la solución compilada sin ningún problema ... así podría ser el caso con tu solución de estudio visual ...

Pero todo funciona bien si utilizamos el profesional de VS 2008 ... no necesitamos solución alternativa y todo funciona como magia ...


Tenga en cuenta también que puede suceder si cambia el espacio de nombres pero no cambió el nombre del ensamblado en las propiedades del proyecto.


Tuve un problema similar, un error de referencia de ensamblaje ("¿Te falta una directiva using o una referencia de ensamblado?") Y el intellisense VS me dio la oportunidad de agregar el uso pero en la solución la referencia tenía el icono amarillo y la construcción estaba fallando

Lo resolví mirando la propiedad del proyecto Target Framework y cambiando la versión .net a la versión de la solución de referencia y esto resolvió todos los problemas.

Nota: Las versiones .net deben ser compatibles entre proyectos.


Verifique la plataforma de destino del nuevo proyecto y asegúrese de que no esté dirigido a .NET 4 Client Profile. Si es así, cámbielo a .NET 4 regular