views:

164

answers:

1

I can not make NHibernate 2.1 work in machines without framework 3.X (basically, windows 2000 SP4, although it happens with XP too).

NHibernate doc do not mention this. Maybe you can help? I NEED to make NHibernate 2.1 work in Windows 2000 PCs, do you think this can be done?

PD: DataBase is SQL 2000/2005. Error is:

NHibernate.MappingException: Could not compile the mapping document: Datos.NH_VEN_ComprobanteBF.hbm.xml ---> NHibernate.HibernateException: Could not instantiate dialect class NHibernate.Dialect.MsSql2000Dialect ---> System.Reflection.TargetInvocationException: Se produjo una excepción en el destino de la invocación. ---> System.TypeInitializationException: Se produjo una excepción en el inicializador de tipo de 'NHibernate.NHibernateUtil'. ---> System.TypeLoadException: No se puede cargar el tipo 'System.DateTimeOffset' del ensamblado'mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.
   en NHibernate.Type.DateTimeOffsetType.get_ReturnedClass()
   en NHibernate.NHibernateUtil..cctor()
   --- Fin del seguimiento de la pila de la excepción interna ---
   en NHibernate.Dialect.Dialect..ctor()
   en NHibernate.Dialect.MsSql2000Dialect..ctor()
   --- Fin del seguimiento de la pila de la excepción interna ---
   en System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean& canBeCached, RuntimeMethodHandle& ctor, Boolean& bNeedSecurityCheck)
   en System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean fillCache)
   en System.RuntimeType.CreateInstanceImpl(Boolean publicOnly, Boolean skipVisibilityChecks, Boolean fillCache)
   en System.Activator.CreateInstance(Type type, Boolean nonPublic)
   en NHibernate.Bytecode.ActivatorObjectsFactory.CreateInstance(Type type)
   en NHibernate.Dialect.Dialect.InstantiateDialect(String dialectName)
   --- Fin del seguimiento de la pila de la excepción interna ---
   en NHibernate.Dialect.Dialect.InstantiateDialect(String dialectName)
   en NHibernate.Dialect.Dialect.GetDialect(IDictionary`2 props)
   en NHibernate.Cfg.Configuration.AddValidatedDocument(NamedXmlDocument doc)
   --- Fin del seguimiento de la pila de la excepción interna ---
   en NHibernate.Cfg.Configuration.LogAndThrow(Exception exception)
   en NHibernate.Cfg.Configuration.AddValidatedDocument(NamedXmlDocument doc)
   en NHibernate.Cfg.Configuration.ProcessMappingsQueue()

and continues...

+2  A: 

You should be able to use it on .NET 2.0SP1. That's where DateTimeOffset was introduced. 2.0 SP1 will run on Windows 2000 SP4.

Jon Skeet
Interesting, I am checking right now.
Daniel Dolz
I installed .NET Framework SP2. It WORKED!!! you rock!! Thanks!!
Daniel Dolz