visual una studio para pagina net crear configurar como code asp c# asp.net visual-studio app-code

c# - una - visual studio code



Problemas con la carpeta App_Code (6)

A veces he notado un desajuste entre el analizador IDE y el compilador cada vez que se produce un error en tiempo de compilación en un ensamblado o archivo de código referenciado. En esa circunstancia, IDE identificará correctamente los tipos y proporcionará soporte completo para ellos, pero como el compilador no pudo crear los objetos a los que se hace referencia, se quejará de que los objetos a los que se hace referencia no existen.

Ahora no quiero acusar a nadie de nada, esto es sólo una suposición, pero probablemente debería asegurarse de que no haya ningún error en el archivo de código al que se hace referencia.

Así que estoy teniendo un problema realmente extraño con mi carpeta App_Code en un nuevo sitio web que estoy diseñando.

Tengo una clase básica dentro de un espacio de nombres en la carpeta App_Code. Todo funciona bien en el IDE cuando configuro el espacio de nombres y hago un objeto de la clase. Abre el resumen de la clase en vuelo estacionario, y cuando haces clic en "ir a deffinition" va al archivo de la clase. Y también funciona bien a nivel local.

Sin embargo, cuando cargo el sitio en mi servidor, aparece este mensaje de error cuando accedo a esa página:

Línea 10: utilizando System.Web.UI.WebControls;
Línea 11: utilizando System.Web.UI.WebControls.WebParts;
Línea 12: usando xxxx.xxxx

Mensaje de error del compilador: CS0246: No se pudo encontrar el tipo o el nombre del espacio de nombres ''xxxxxx'' (¿falta una directiva using o una referencia de ensamblado?)

Sé a ciencia cierta que el archivo de la clase está allí. ¿Alguien tiene alguna idea de lo que está pasando?

Ediciones:

John, sí, es un sitio 2.0.


Si su aplicación es un proyecto de aplicación web en lugar de un proyecto de sitio web, los archivos de código no deberían estar en la carpeta App_Code (diseño estúpido, lo sé). Crea una nueva carpeta llamada código o algo y ponlos allí.

Me causó todo tipo de problemas cuando actualicé un montón de viejos sitios web de .Net para proyectos de aplicaciones.


Dependiendo de cómo publique el sitio, no se verá en App_Code, sino que buscará una DLL en la carpeta Bin que contenga la clase. ¿Cómo transfirió su sitio web al servidor?


Esto me pasó a mí y la solución fue que App_Code (y App_Data) no se colocaron en la raíz del servidor, sino en una subcarpeta que contenía todo lo demás. Debe estar enraizado!


Para los que siguen ... tuve este mismo conjunto de problemas, pero fue causado porque nombré una clase en App_Code, ''HTML''. Me tomó un tiempo darme cuenta de que solo era un conflicto de nombres porque el compilador no estaba siendo muy útil para decirme cuál era el problema.


El problema de que sus clases no están compiladas, resolverá este problema simplemente yendo a las propiedades de cualquier clase en la carpeta App_Code y cambiará su propiedad ''Build Action'' desde "Content" a "Compile"