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 :

Mapping avec NHibernate


Sujet :

NHibernate

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Pingva
    Profil pro
    Inscrit en
    Août 2004
    Messages
    190
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 190
    Par défaut Mapping avec NHibernate
    Bonjour, je suis en train de créer ma premiére appli asp.net c# avec NHibernate. Les simples mappings marchent bien, j'arrive à afficher des données d'une table, insere dans une table.
    Mais voilà un dilème :
    J'ai une table ACTION (IDACTION (clé))et un table CATEGORIE (IDCATEGORIE (clé)). Chaque action peut appartenir à plusieres categorie, et chaque Categorie peut referer plusieres actions. Donc, necessité d'une table intermediaire ACTION_CATEG(IDACTION ,IDCATEGORIE clé composée)

    J'ai commencé de fair un mapping.
    Sur la table ACTION je fais un idbag
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <idbag name='Categories' table='ACTION_CATEG'  lazy='true' cascade="all" >
          <collection-id column="IDACTION,IDCATEGORIE" type="long">
            <generator class="native" />
          </collection-id>
          <key column='IDACTION' />
          <many-to-many class='Categorie' column='IDCATEGORIE' />
      </idbag>
    dans ma classe Action j'ai
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
      private IList<Categorie> _categories;
     public virtual IList<Categorie> Categories
            {
                get { return _categories; }
                set { _categories = value; }
            }
    Dans le programme j'ai une liste des categorie, et celles qui seront cochées de voudrai les attacher a une action (donc, insertion dans la table ACTION_CATEG')
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
     Action a = session.Get<Action>(24);
     
            foreach (ListItem i in chkCategories.Items)
            {
                if (i.Selected)
                {
                    Categorie c= session.Get<Categorie>(int.Parse(i.Value));
                    a.Categories.Add(c);           
                }
            }
    dites - moi au moins si je suis sur une bonne piste ou il faudrait mapper d'une autre facon?

    merci

  2. #2
    Membre confirmé Avatar de bartoumi
    Profil pro
    Inscrit en
    Février 2005
    Messages
    178
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 178
    Par défaut
    Crée toi un mapping sur cette table intermédiaire ACTION_CATEG avec un composite-id

    Voici des liens

    http://www.hibernate.org/hib_docs/v3...omponents.html
    http://www.developpez.net/forums/sho...d.php?t=190233

  3. #3
    Membre confirmé Avatar de Pingva
    Profil pro
    Inscrit en
    Août 2004
    Messages
    190
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 190
    Par défaut
    Citation Envoyé par bartoumi Voir le message
    Crée toi un mapping sur cette table intermédiaire ACTION_CATEG avec un composite-id

    Voici des liens

    http://www.hibernate.org/hib_docs/v3...omponents.html
    http://www.developpez.net/forums/sho...d.php?t=190233
    merci
    entre temps j'ai trouvé une solution qui marche :
    j'ai crée pour la table ACTION_CATEG une clé idependante (je n'utilise plus la clé composée)
    et cette clé independante que j'utilise dans mon <ibag>

    ça marche

    je n'ai pas réussi de le faire avec juste une clé composée...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Mapping avec Nhibernate
    Par amina-info dans le forum NHibernate
    Réponses: 1
    Dernier message: 02/04/2013, 00h26
  2. Mapping avec OJB
    Par kodo dans le forum JDBC
    Réponses: 2
    Dernier message: 12/06/2006, 12h09
  3. [hibernate] Mapping avec identifiant composé
    Par miky_jo dans le forum Hibernate
    Réponses: 3
    Dernier message: 11/10/2005, 16h48
  4. [KODO]mapping avec JDO
    Par ksavieras dans le forum Persistance des données
    Réponses: 3
    Dernier message: 21/09/2005, 20h41
  5. [Struts][Tiles] Probleme d'action mapping avec un dynaform
    Par bluefox_du_974 dans le forum Struts 1
    Réponses: 3
    Dernier message: 28/03/2005, 22h47

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