NHibernate

dermerzel137 Messages postés 8 Date d'inscription jeudi 10 novembre 2005 Statut Membre Dernière intervention 14 décembre 2010 - 8 juin 2010 à 11:50
dermerzel137 Messages postés 8 Date d'inscription jeudi 10 novembre 2005 Statut Membre Dernière intervention 14 décembre 2010 - 8 juin 2010 à 12:36
Bonjour,

J'ai une erreur lors du "mappage" : Une exception a été levée par l'initialiseur de type pour 'EnergySim.Utilitaires.Hibernate.NHibernateSessionFactory'.

Voici la classe NHibernateSessionFactory qui me permet d'instancier NHibernate :

using System;
using System.Collections.Generic;
using System.Text;
using NHibernate;
using NHibernate.Cfg;
using System.Reflection;

namespace EnergySim.Utilitaires.Hibernate
{
    public class NHibernateSessionFactory
    {
        public static Configuration config = null;
        public static ISessionFactory factory = null;

        static NHibernateSessionFactory()
        {

            config = new Configuration();

            config.Properties.Add("hibernate.Connection.Provider", "NHibernate.Connection.DriverConnectionProvider");
            config.Properties.Add("hibernate.connection.driver_class", "NHibernate.JetDriver.JetDriver");
            config.Properties.Add("hibernate.dialect", "NHibernate.JetDriver.JetDialect");
            config.Properties.Add("hibernate.connection.connection_string", "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=../../../nhibernate.mdb");
            
            //mapping meteo
            config.AddFile(@"C:\Users\DIDELOGU\Documents\ThermoSim\ThermoSim\EnergySim.Météo\DataAccess\Hibernate\Mapping\Meteo.hbm.xml");

            factory = config.BuildSessionFactory();
        }

        public static ISession openSession()
        {
            return factory.OpenSession();
        }

    }
}


Et voici mon ficheir de mapping Meteo.hbm.xml:

<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="EnergySim.Meteo" namespace="EnergySim.Meteo.DataAccess.Hibernate">
  <class name="EnergySim.Meteo.DataAccess.Hibernate.meteo, meteo" table="Meteo">
    
      <generator class="assigned" />
    
    
    
    
    
    
    
    
  </class>
</hibernate-mapping>


Je précise que mon assembly de projet est bien EnergySim.Meteo.

Je ne comprends pas pourquoi cette erreur.

Cordialement

1 réponse

dermerzel137 Messages postés 8 Date d'inscription jeudi 10 novembre 2005 Statut Membre Dernière intervention 14 décembre 2010
8 juin 2010 à 12:36
Ma classe à mapper :
using System;

namespace EnergySim.Meteo.DataAccess.Hibernate
{
    /// <summary>
    /// Entité "meteo".
    /// </summary>
    //[NHibernate.Mapping.Attributes.Class(Table = "Meteo")]
    public class meteo
    {
        private Int32       _id = 0;
        private DateTime    _datedescan         = DateTime.Now;
        private String      _ville;
        private Single      _temperatureminimale;
        private Single      _temperaturemaximale;
        private Single      _vitesseduvent;
        private String      _directionduvent;
        private Single      _humidite;

        /// <summary> Constructeur par défaut. </summary>
        public meteo()
        {
        }

        /// <summary> Constructeur rempli. </summary>
        public meteo(string Ville, float TemperatureMinimale, float TemperatureMaximale, float VitesseDuVent, string DirectionDuVent, float Humidite)
        {
            this.Ville                  = Ville;
            this.Temperaturemaximale    = TemperatureMaximale;
            this.Temperatureminimale    = TemperatureMinimale;
            this.Vitesseduvent          = VitesseDuVent;
            this.Directionduvent        = DirectionDuVent;
            this.Humidite               = Humidite;
        }

        /// <summary> Identificateur unique de ce contact. </summary>
        //[NHibernate.Mapping.Attributes.Id(Name = "Id")]
            //[NHibernate.Mapping.Attributes.Generator(1, Class = "native")]
        public virtual Int32 Id
        {
            get { return _id; }
        }

        /// <summary> Date de scan. </summary>
        //[NHibernate.Mapping.Attributes.Property]
        public virtual DateTime Datedescan
        {
            get { return _datedescan; }
            set { _datedescan = value; }
        }

        /// <summary> Ville concernée. </summary>
        //[NHibernate.Mapping.Attributes.Property]
        public virtual String Ville
        {
            get { return _ville; }
            set { _ville = value; }
        }

        /// <summary> Température minimale. </summary>
        //[NHibernate.Mapping.Attributes.Property]
        public virtual Single Temperatureminimale
        {
            get { return _temperatureminimale; }
            set { _temperatureminimale = value; }
        }

        /// <summary> température maximale. </summary>
        //[NHibernate.Mapping.Attributes.Property]
        public virtual Single Temperaturemaximale
        {
            get { return _temperaturemaximale; }
            set { _temperaturemaximale = value; }
        }

        /// <summary> Vitesse du vent. </summary>
        //[NHibernate.Mapping.Attributes.Property]
        public virtual Single Vitesseduvent
        {
            get { return _vitesseduvent; }
            set { _vitesseduvent = value; }
        }

        /// <summary> Direction du vent. </summary>
        //[NHibernate.Mapping.Attributes.Property]
        public virtual String Directionduvent
        {
            get { return _directionduvent; }
            set { _directionduvent = value; }
        }

        /// <summary> humidité. </summary>
        //[NHibernate.Mapping.Attributes.Property]
        public virtual Single Humidite
        {
            get { return _humidite; }
            set { _humidite = value; }
        }
    }


Un oublie de ma part ...
0
Rejoignez-nous