Estoy trabajando en un proyecto MVC3 y recibo el siguiente error:
Mensaje de error del analizador: no se pudo cargar el tipo 'GodsCreationTaxidermy.MvcApplication'.
Error de fuente:
Línea 1:
<%@ Application Codebehind="Global.asax.cs" Inherits="GodsCreationTaxidermy.Core.MvcApplication" Language="C#" %>
El error que obtengo es que no se puede cargar GodsCreationTaxidermy.Core.MvcApplication, pero en esta captura de pantalla, la parte principal no se muestra en el error:
¿Alguien tiene alguna idea o una solución a este error?
asp.net
asp.net-mvc-3
PsychoCoder
fuente
fuente
Respuestas:
Su servidor web local está ejecutando un código diferente al que realmente está trabajando. Asegúrese de haber dejado de depurar, detenga su servidor web local, limpie y reconstruya como Peter sugirió, verifique sus global.asax y global.asax.cs, e intente nuevamente.
Si esto no funciona y está utilizando IIS local, intente eliminar el sitio en el Administrador de IIS y volver a crearlo manualmente.
fuente
Compruebe que la ruta de salida del proyecto (propiedades / construcción del proyecto) se establece en
bin
y nobin\Release
obin\Debug
Por alguna razón, IIS (VS Development Server o Local IIS) siempre accede a las bibliotecas desde el
bin
directorio (y no buscará subdirectorios)fuente
Intente modificar su archivo global.asax (simplemente agregue un espacio en algún lugar) y vuelva a ejecutarlo. esto forzará al servidor web incorporado a actualizar y recompilar el archivo global.asax.
También haga una limpieza y reconstrucción: debería solucionar el problema
fuente
Esto sucede a veces si cambia la información del espacio de nombres (proyecto o nivel de clase) después de que
global.asax
se genera el.Haga clic derecho en el
Global.asax
archivo y seleccione "Abrir con" y luego seleccione "Editor de XML (texto) con codificación" (otros editores también pueden funcionar, pero esto es lo que uso).Luego edite la sección "Hereda" en la directiva XML
para que coincida con el nombre completo real de su clase de aplicación. Y eso es.
Otra opción es copiar todo el código de Global.asax.cs y luego eliminar y crear otro archivo Global.asax (y luego copiar el código nuevamente en Global.asax.cs).
fuente
Global.asax
archivo como se indica en esta respuesta, y hacer que coincida con lo que está en la configuración del Proyecto.Cerré y volví a abrir Visual Studio y funcionó.
fuente
Tuve que ir a CONSTRUIR -> ADMINISTRADOR DE CONFIGURACIÓN y - ejem - marcar la casilla junto a mi proyecto para asegurarme de que realmente se construye.
fuente
Tuve este problema hoy, y me llevó un tiempo encontrar la causa.
Básicamente, mi proyecto principal VS2015 incluía un subproyecto que se había creado utilizando una versión superior de .Net Framework.
Curiosamente, cuando tiene este problema, VS2015 informará con gusto que la solución se ha desarrollado correctamente, pero cuando intenta ejecutar el sitio web, solo le da ese error engañoso, lo que sugiere que su
Global.asax.cs
archivo está mal.Entonces, si ve este error, y Limpieza / Reconstrucción no ayuda, abra el
References
árbol de su Proyecto y verifique si hay signos de exclamación.Además, revise su
Output
ventana para ver mensajes como este:La solución, por supuesto, es hacer clic derecho en su proyecto principal, seleccionar la pestaña superior, "Aplicación", y cambiar la versión de Target Framework a una versión superior que coincida con su subproyecto.
Es molesto que Visual Studio 2015 le permita compilar y ejecutar completamente soluciones que silenciosamente contienen este problema. ¡Está pidiendo problemas ...!
fuente
También puede verificar las propiedades de su sitio en IIS. (En IIS, haga clic con el botón derecho en el sitio y elija Propiedades). Asegúrese de que la configuración de Ruta física apunte a la ruta correcta para su aplicación, no para otra aplicación. (Eso solucionó este error para mí).
fuente
Acabo de encontrar esto en una aplicación MVC5 y nada funcionaba para mí. Esto sucedió justo después de haber intentado hacer una reversión de SVN a una versión anterior del proyecto.
Tuve que eliminar global.asax.cs y luego agregué uno nuevo haciendo clic derecho en Proyecto -> Agregar nuevo elemento -> Global.asax y ESO finalmente lo arregló.
Solo pensé que podría ayudar a alguien.
fuente
global.asax.cs
archivo existente . Debe establecerse en "Compilar". La acción de compilación delglobal.asax
archivo en sí debe establecerse en "Contenido".Tengo que informar que probé al menos 4 sugerencias de esta publicación. Ninguno de ellos funcionó. Sin embargo, me complace informar que me recuperé recuperándome de la copia de seguridad. Solo tuve que actualizar mis últimos cambios de código desde el archivo de registro. Tomó menos de 10 minutos. Pasé 3 veces eso leyendo esta publicación y probando otras sugerencias. Lo siento.
Fue un error muy extraño. Buena suerte a cualquiera que se encuentre con este gremlin.
fuente
Tengo el mismo problema cuando tengo 2 instancias de Visual Studio ejecutando el mismo proyecto. Así que cerré Visual Studio y abrí solo una instancia y ¡funciona bien ahora!
fuente
Estaba trabajando en un proyecto web ASP.NET antiguo 'basado en carpetas' (que odio), y descubrí que esta es mi solución:
Crea una
App_Code
carpeta (si aún no tienes una)Mueve el
Global.asax.vb
archivo a laApp_Code
carpetaEl marcado en Global.asax puede omitir cualquier espacio de nombres (al menos, para este estilo de proyecto, afaik):
... donde "MyApp" es el nombre de la clase que se define en Global.asax.vb
fuente
"CONSTRUIR -> GERENTE DE CONFIGURACIÓN y - ejem - marque la casilla junto a mi proyecto para asegurarse de que realmente se construya". Eso e ir a la carpeta del proyecto en el explorador de Windows, presionar las opciones y desmarcar la casilla de verificación "Solo lectura" ayudó.
fuente
Vaciar la carpeta bin. Cree todas las bibliotecas de clases dependientes y refiéralas en el proyecto principal, y cree la solución completa.
Fuente
fuente
Yo también enfrenté el mismo problema. A pesar de seguir cada respuesta, no funcionó. Luego cambié "Inherits = namespace.class " a "Inherits = nombre de ensamblaje totalmente calificado ", es decir, "Inherits = namespace.class, assenamename, Version =, Culture =, PublicKeyToken = " Espero que ayude.
fuente
Esto también puede suceder si accidentalmente olvida configurar su solución VS en "Proyectos de inicio múltiple" si está ejecutando un Web y un WebApi desde la misma solución.
Puede verificar esto haciendo clic derecho en Solución en el Explorador de soluciones y seleccione 'Propiedades ". Luego busque' Proyectos de inicio '.
fuente
Elimine el
.vs
directorio de la raíz de la solución. Limpiar. Reconstruir.Este problema me vuelve loco de vez en cuando e inevitablemente termino aquí buscando respuestas. Sospecho que hay varias causas que pueden producir esta excepción, esto alguna vez me funciona.
fuente
Sí, leí todas las respuestas. Sin embargo, si usted es yo y ha estado sacando todo lo que queda de su cabello, intente verificar la carpeta \ bin. Como la mayoría de los archivos de proyecto pueden tener varias configuraciones agrupadas bajo el elemento XML
PropertyGroup
, luego cambié elOutputPath
valor de 'bin \ Debug' para eliminar la parte '\ Debug' y Reconstruir. Esto colocó los archivos en la carpeta \ bin permitiendo que Express IIS encuentre y cargue la compilación. Me pregunto cuál es la forma correcta de administrar estas diferentes compilaciones para que una implementación de depuración local pueda encontrar y cargar el entorno de destino.fuente
Este problema se resolvió otorgando el permiso correcto de la carpeta y comprobando desde IIS.
Me dieron permiso a todos cuando estoy probando en mi entorno local. Pero en modo de publicación, creo que solo damos permiso al usuario de ASP.Net.
fuente
También recibí el mismo error ... verifique el nombre de la aplicación que desarrolló correctamente, es decir. el espacio de nombres y el nombre del ensamblado asignados y también intente cambiar físicamente el nombre de la carpeta creada para la aplicación, todo esto debe ser el mismo que el nombre en el espacio de nombres anterior presente en el archivo global.asax
fuente
También recibí el mismo error ... compruebe la configuración de IIS de su directorio virtual y asegúrese de que Propiedades - ASP.NET - Versión de ASP.NET sea la misma que Propiedades del proyecto - Aplicación - Marco de destino. (Eso solucionó este error para mí).
fuente
Mi aplicación se creó en una versión anterior de VS y no tenía una carpeta bin. Lo actualicé a una versión más nueva y tuve una pesadilla para implementarlo. Finalmente rastreé este error hasta Proyecto> Propiedades> Aplicación. El Marco de destino se estableció en 2.0; cambiarlo en el servidor para que coincida con el Administrador de IIS / Grupo de aplicaciones me resolvió el problema.
fuente
Descubrí que cambiar el espacio de nombres en el proyecto, sin refactorizar que en toda la solución era mi problema. Verifique las Propiedades de su proyecto y vea cuál es su espacio de nombres, asegúrese de que se alinee, en todos los ámbitos.
fuente
El problema para mí es que no incluí global.asax.cs en mi proyecto. Y debido a que estaba copiando archivos de un .net 4.5 a un 4.0, no comenté líneas que no son necesarias en 4.0. Debido a que no estaba incluido, Visual Studio lo compiló de todos modos sin problemas. Pero cuando lo incluí, resaltó las líneas que causan problemas.
fuente
Pasé literalmente un día tratando de resolver esto.
Lo único que funcionó fue eliminar el archivo .sln, crear uno nuevo y volver a agregar los proyectos uno por uno.
¯ \ _ (ツ) _ / ¯ - Programación - ¯ \ _ (ツ) _ / ¯
fuente
Para mi caso, el ensamblaje web era parte de GAC ... así que después de la compilación, necesitaba instalarse en GAC y funcionó.
fuente
Encontré este mensaje de error y finalmente descubrí que el mensaje de error era engañoso. En mi caso, parece haber habido un problema de enrutamiento en IIS que provocó la lectura de global.asax desde otro sitio en el servidor web, generando así el error.
En IIS, mi sitio estaba vinculado a http: * 80: webservices.local y contenía una aplicación llamada MyAPI. Recibí el temido mensaje cuando llamé a la aplicación MyAPI usando la dirección IP del servidor web.
Para llamar con éxito a mi aplicación, tuve que agregar una entrada de archivo de host para webservices.local en todas las máquinas que llamaron a la aplicación MyAPI. Luego, todas mis solicitudes tenían que tener el prefijo http: //webservices.local/MyAPI/ para poder enrutarlas correctamente.
fuente
Intenté absolutamente todo aquí y nada funcionó. Mi proyecto estaba en VS 2013. Desde entonces me actualicé a VS 2015 y he estado creando todas mis nuevas aplicaciones en 2015, pero cargando, compilando, compilando, etc., todas mis aplicaciones antiguas que se construyeron en 2013 en esa versión.
Terminé cargando la solución en 2015 y lo resolvió por mí.
fuente
Pasé varios días en este tema. Finalmente lo resolví con la siguiente combinación de sugerencias de esta publicación.
bin\
lugar debin\x64\Debug
. Ya lo había intentado varias veces antes de cambiar el objetivo de la plataforma. Nunca hizo una diferencia que no sea obtener un error de que no pudo cargar el ensamblaje debido a un formato no válido.Para ser claros, tuve que hacer ambos antes de que comenzara a funcionar. Los había probado individualmente varias veces, pero nunca lo solucionó hasta que hice ambas cosas.
Si vuelvo a cambiar cualquiera de estas configuraciones al original, obtengo el mismo error nuevamente, a pesar de haber ejecutado Clean Solution y eliminar manualmente todo en el
bin
directorio.fuente
Dos formas de conseguir esto:
El administrador de configuración muestra las compilaciones dll como una mezcla de compilaciones '64' y 'any cpu'. Ponerlos a todos en la misma compilación lo arregla.
Al cambiar entre ramas, la ruta expresa de IIS a veces no se actualiza. Haga clic con el botón derecho en 'IIS Express' en la barra de tareas> Mostrar todas las aplicaciones y verifique que la ruta es hacia la rama correcta.
fuente