visual tag studio referencia propiedad data agregar c# winforms namespaces

c# - tag - Visual Studio 2010 de repente no puede ver el espacio de nombres?



tag c# (7)

Mi solución C # WinForms tiene dos proyectos. Una DLL que es el proyecto principal en el que estoy trabajando, y un ejecutable WinForms que llamo "Sandbox" para que pueda compilar / ejecutar / depurar la DLL fácilmente de una vez.

Estoy trabajando en .Net 4.0 para ambos proyectos.

Todo funcionaba bien hasta que agregué un código aparentemente inocente y una referencia a System.Web en la DLL. Ahora mi proyecto de Sandbox no puede ver el espacio de nombres del proyecto DLL. No cambié nada que creo que debería haber afectado esto.

Si elimino la referencia del proyecto a la DLL de las referencias de Sandbox y vuelvo a agregarla, las líneas rojas subrayadas desaparecerán y la codificación de color volverá para todas mis clases, etc .; pero tan pronto como intento construir la solución, todo vuelve a derrumbarse.

Cuando hago clic con el botón derecho en el proyecto DLL en las referencias de Sandbox y lo veo en el navegador de objetos, puedo ver el espacio de nombres y todo lo que hay allí.

Tengo la sensación de que esto podría ser algún tipo de error?

¿Es esto algún tipo de error VS2010? Tuve este mismo problema hace unos meses y solo pude solucionarlo en ese momento al hacer un proyecto completamente nuevo y volver a importar mis archivos. Esta vez, sin embargo, tengo miles de archivos y solo lo haré como último recurso.

Editar: Después de analizar detenidamente y deshacer todos mis cambios, tratando de encontrar lo que causó los problemas, parece ser esta línea:

string url = "http://maps.google.com?q=" + HttpUtility.UrlEncode(address);

Si hago un comentario sobre esta línea, no obtengo ningún error de espacio de nombres y el proyecto se compila correctamente. Sin embargo, no veo nada malo en esta línea.


Acabo de tener este problema y resultó ser que tenía varios espacios de nombres en uso que tenían el mismo nombre de objeto (es decir, los objetos comerciales tenían los mismos nombres que los modelos mvc);

La calificación completa de los nombres me solucionó el problema.


Cambiar el marco de destino del ".NET Framweork 4 Client Profile" a ".NET Framework 4" funcionó para mí con un problema similar. Estoy de acuerdo con que el perfil del cliente no parece tener una gran ventaja al usarlo. Parece que me enganchan con errores extraños que busco hasta que recuerdo que Visual Studio se establece de manera predeterminada en el perfil del cliente. Supongo que la moraleja de la historia al obtener un error es: si "Rebuild Solution" no funciona, compruebe el marco de destino ...


Estoy listo para declarar esto como un error en VS2010, esto ya ha mordido a demasiados programadores. La solución es sencilla: Proyecto + Propiedades, pestaña Aplicación, cambiar el Marco de destino a ".NET Framework 4" en lugar del perfil de cliente que se selecciona de forma predeterminada.

System.Web no está incluido en el perfil del cliente. Tener esta opción en primer lugar es bastante tonto, el perfil del cliente es solo un 15% más pequeño que la versión completa de .NET 4.0. Tenerlo seleccionado por defecto es aún más tonto. Pero yo divago.

ACTUALIZACIÓN: afortunadamente todo esto se arregló en VS2012. Que ya no hace que el perfil del cliente sea el predeterminado para un nuevo proyecto. Y el perfil del cliente se retiró por completo en .NET 4.5, buena idea.


Intente construir solo el proyecto con Sandbox dll primero de forma independiente.

A continuación, apunte su proyecto ejecutable al dll requerido y asegúrese de que copy local esté establecido en true . en ajustes de referencia.

Luego crea el proyecto ejecutable.


Si ya intentó hacer el cambio de Framework, y aún no funcionó, espero que esto funcione para usted (como lo hizo para mí): simplemente agregue las referencias necesarias dentro de sus proyectos. Muy obvio, pero lo estaba haciendo mal hasta que encontré cuál era el problema.


Una posibilidad es que la versión de .NET Framework objetivo de la biblioteca de clases sea más alta que la del proyecto. Enfrenté este problema y lo resolví cerrando Visual Studio, volviendo a abrir Visual Studio, limpiando y reconstruyendo la solución. Esto funcionó para mí. En algunos otros mensajes, he leído las respuestas y la mayoría de los usuarios resolvió el problema siguiendo este camino.


Verifique para asegurarse de que ambos proyectos estén usando el perfil que no es cliente para su marco objetivo (vaya a las propiedades de cada proyecto para hacer esto).