2011-07-06 44 views
15

Estoy intentando crear una membresía y un proveedor de roles personalizados. El código para esta parece estar bien, pero cuando trato de ir a la sección de seguridad de la herramienta Administración de sitios Web, me sale el siguiente:No se pudo cargar el archivo ni el ensamblado NHibernate.XmlSerializers

El miembro invocado no se admite en un montaje dinámico.

En referencia a la primera línea del primer bit de código relacionado con NHibernate que se llama:

var cfg = new Configuration(); 

seguido de:

Una primera excepción del tipo 'Sistema .IO.FileNotFoundException ' producido en mscorlib.dll

Información adicional: No se pudo cargar archivo o ensamblado ' NHibernate.XmlSerializers, version = 3.1.0.4000, Culture = neutral, PublicKeyToken = aa95f207798dfdb4' o una de sus dependencias. El sistema no puede encontrar el archivo especificado.

Antes de que tengo algunos:

Nombre del idioma no es compatible 'aspx'.

Tengo los proveedores en la carpeta App_Code y las DLL de NHibernate se copian en la carpeta Bin al ejecutar la aplicación.

Supongo que se trata de que los proveedores no puedan encontrar todas las clases y dlls relevantes relacionados con NHibernate y la clase Rol, y así sucesivamente.


Por alguna razón, este problema desapareció.

+7

Creo que esta es una buena pregunta. Hay momentos en los que es útil romper con las excepciones CLR, y la excepción NHibernate.XmlSerializers es una distracción. La solución consiste en generar una copia local de NHibernate.XmlSerializers.dll y colocarla en el mismo directorio que NHibernate.dll. Instrucciones aquí: http://www.codewrecks.com/blog/index.php/2008/02/13/sgenexe-and-strongly-named-assemblies/. NHibernate.snk aquí: https://github.com/nhibernate/nhibernate-core/blob/master/src/NHibernate.snk. sgen.exe NHibernate.dll /type:NHibernate.Cfg.MappingSchema.HbmMapping /compiler:/keyfile:NHibernate.snk – RedGreenCode

Respuesta

24

Tuve la misma cosa, resulta que no fue realmente un problema. Tenía IDE configurado para que se rompa en Excepciones

Después de leer este enlace a continuación me di cuenta.

http://www.mail-archive.com/[email protected]/msg06043.html

simplemente puede golpear F5 y seguir corriendo. Eso es prácticamente todo lo que sé

Cuestiones relacionadas