IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

NHibernate Discussion :

nhibernate et c#


Sujet :

NHibernate

  1. #1
    Membre à l'essai
    Inscrit en
    Février 2007
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 23
    Points : 19
    Points
    19
    Par défaut nhibernate et c#
    Bonjour,
    je suis un débutant pour ce que qui conserne le framework NHibernate pour c#, je travail avec SharpDevelop et La base de données access.

    j'ai bien crée une table "ETUDIANT", une classe "ETUDIANT.cs", un fichier de mapping "ETUDIANT.hbm.xml",et un fichier de configuration "ETUDIANT.config".

    tous a était bien compilé et le .dll a était généré .

    mais le probléme c'est quant je modifie la classe main le programme crache dans l'instruction "Configuration cfg = new Configuration();"

    voilà mon code main:

    class MainClass
    {
    public static void Main(string[] args)
    {
    Configuration cfg1 = new Configuration(); // il crache içi
    cfg1.AddAssembly("NHibernateQuickStart");

    ISessionFactory factory = cfg1.BuildSessionFactory();
    ISession session = factory.OpenSession();

    IList ListeEtudiants= session.CreateCriteria(typeof(ETUDIANT)).List();
    foreach(ETUDIANT UnEtudiant in ListeEtudiants)
    {
    System.Diagnostics.Debug.WriteLine(UnEtudiant.Nom+ ", a la note: " + UnEtudiant.Note);
    }
    }
    }

  2. #2
    Rédacteur
    Avatar de Thomas Lebrun
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    9 161
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 9 161
    Points : 19 434
    Points
    19 434
    Par défaut
    Quel est le message d'erreur ?

  3. #3
    Membre à l'essai
    Inscrit en
    Février 2007
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 23
    Points : 19
    Points
    19
    Par défaut
    merci d'avoir répondu voilà le msg d'erreur:
    Exception System.TypeInitializationException was thrown in debuggee:
    The type initializer for 'NHibernate.Cfg.Configuration' threw an exception.

    Main() - d:\Nhebernet best\Main.cs:17,1

  4. #4
    Membre du Club

    Homme Profil pro
    Architecte technique
    Inscrit en
    Décembre 2006
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2006
    Messages : 38
    Points : 64
    Points
    64
    Par défaut
    Bonjour,

    votre problème est simple et aussi claire, vous n'avez pas configuré votre hibernate.
    il y a deux méthode de le faire soit par programmation soit par le fichier de configuration XML.

    En fait le fichier de configuration continet la chaine de connaction a la base, le dialect utlisé par nhibernate pour communiquer avec la base de données...

    voici un exemple de fichier de configuration XML :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    <?xml version='1.0' encoding='utf-8'?>
    <hibernate-configuration xmlns="urn:nhibernate-configuration-2.0">
     
        <!-- an ISessionFactory instance -->
        <session-factory>
     
            <!-- properties -->
            <property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property>
            <property name="connection.driver_class">NHibernate.Driver.SqlClientDriver</property>
            <property name="connection.connection_string">Server=localhost;initial catalog=nhibernate;User Id=;Password=</property>
            <property name="show_sql">false</property>
            <property name="dialect">NHibernate.Dialect.MsSql2000Dialect</property>
            <property name="use_outer_join">true</property>
     
            <!-- mapping files -->
            <mapping resource="NHibernate.Auction.Item.hbm.xml" assembly="NHibernate.Auction" />
            <mapping resource="NHibernate.Auction.Bid.hbm.xml" assembly="NHibernate.Auction" />
     
        </session-factory>
     
    </hibernate-configuration>

    et dans le code pour le sessionFactory :

    ISessionFactory sf = new Configuration().Configure().BuildSessionFactory();

    le fichier de configuration doit porter le nom de "config.cfg.xml"

  5. #5
    Membre à l'essai
    Inscrit en
    Février 2007
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 23
    Points : 19
    Points
    19
    Par défaut
    merci le problème était dans l'extension je nomais le fichier de configuration avec l'extension ".config", mais quand je l'ai changé à ".xml" comme t'as dis ça marche

  6. #6
    Membre à l'essai
    Inscrit en
    Février 2007
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 23
    Points : 19
    Points
    19
    Par défaut
    voilà malgré que le problème est résolu, je sais pas pourquoi il n'a pas admet l'extension ".config", car j'ai trouvé des exemples dans l'internet qui ils disent que dois nemmer ce fichier de configuration avec cet extension c-a-d ".config", mais ça marche pas.et ça marche quant je change l'extension à ".xml".

  7. #7
    Membre du Club

    Homme Profil pro
    Architecte technique
    Inscrit en
    Décembre 2006
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2006
    Messages : 38
    Points : 64
    Points
    64
    Par défaut
    bien,
    je vous ajoute que vous pouvez utiliser des outils de générations des fichiers hibernate le fichier de mapping .xml et le fichier de perssistance .cs comme codeSmith ou ObjectMapper de PuzzulFrameWork .

    Bon travail

  8. #8
    Membre à l'essai
    Inscrit en
    Février 2007
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 23
    Points : 19
    Points
    19
    Par défaut
    wooooow, c'est vrai ça ? t'as dis hibirnet et pas nhibirnet... et si c'est possible ça , c'est de la magique.

  9. #9
    Membre à l'essai
    Inscrit en
    Février 2007
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 23
    Points : 19
    Points
    19
    Par défaut
    je te trouve trés expérémenté ds ce domaine N.Anis , tu m'a résolu un problém trés intéréssant , et c'est à cause de vous que je travail mntn avec nhibirnat sur un grand projet.
    mais une chose est ce que je peux intégrer hibirnat et pas nhibirnat dans c# comme vous avez dis?si oui, est ce que vous étes sure ?si c'est le cas ça peux me résoudre autre problèmes.

  10. #10
    Membre du Club

    Homme Profil pro
    Architecte technique
    Inscrit en
    Décembre 2006
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2006
    Messages : 38
    Points : 64
    Points
    64
    Par défaut
    excuse moi abdelfettah ,

    mais j'ai travaillé avec les deux (nhibernate et hibernate) alors losque j'ai parlé de hibernate j'ai oublié de mêtre le "n", donc je parle de nhibernate et pas de hibernate en fait hibernate c'est pour la monde Java, et nhibernate pour le monde DotNet c'est vrais que hibernate et plus entienne mais nhibernate ça devient de plus mature.
    Donc excuse moi je parle de nhibernate.
    Concernant l'experience de nhiberante , c'est vrais j'ai dévéloppé ma couche de données de mon framework DotNet avec Nhibernate. mais je suis débuton

    Bon si tu as autre question , je suis là

    @+

  11. #11
    Membre à l'essai
    Inscrit en
    Février 2007
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 23
    Points : 19
    Points
    19
    Par défaut
    Bonsoir
    J'ai entendu d'un outil qui s'appel ObjectSpaces, est ce qu'il joue le mème role que nhibernate?si oui; comment on peux trouver son dll pour l'installer, je pense qu'il'est 100% commercial par contre nhibernate.

  12. #12
    Membre du Club

    Homme Profil pro
    Architecte technique
    Inscrit en
    Décembre 2006
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2006
    Messages : 38
    Points : 64
    Points
    64
    Par défaut
    Salut,
    ObjectSpace est un projet abondonné par Microsoft est remplacé par le projet LINQ, ObjectSpace normalement il fait le mappage Object relationnel graphiquement et normelement sa DLL est intégré dans le frameWork DotNet, mais comme je l'ai signalé avant le projet est abondonné par Ms. tu peux utiliser LINQ

  13. #13
    Membre à l'essai
    Inscrit en
    Février 2007
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 23
    Points : 19
    Points
    19
    Par défaut
    merci bien anis, j'ai jamis entendu de cet outil LINQ , mais je pense que t'as raison

Discussions similaires

  1. [C# 2.0/NHibernate] Comment forcer le DataBinding ?
    Par cyrille_ dans le forum NHibernate
    Réponses: 2
    Dernier message: 06/08/2006, 23h17
  2. Réponses: 4
    Dernier message: 28/06/2006, 12h09
  3. [NSPRING - NHIBERNATE] Quelle documentation de reférences ?
    Par nikalkal dans le forum NHibernate
    Réponses: 9
    Dernier message: 23/06/2006, 16h43
  4. [Outils]][C# 2.0/NHibernate] Pourquoi ai-je un souci de mapping ?
    Par joujou_le_fou dans le forum NHibernate
    Réponses: 3
    Dernier message: 11/05/2006, 18h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo