NHibernate un-à-plusieurs problème de mappage

J'ai à la carte deux simple tableau avec une relation de clé étrangère. L'une des tables, Contact contenant des colonnes id (clé primaire de type int),nom, adresse et guid (nouvellement ajouté et n'est pas la clé primaire). L'autre est téléphone__numéro de contenant des colonnes id (clé primaire de type int), contact___id (clé étrangère de l'id dans la table contact) et téléphone__numéro de.

Le fichier de mappage de table Contact est comme ci-dessous :

<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="OfflineDbSyncWithNHibernate" default-lazy="true" namespace="OfflineDbSyncWithNHibernate.Models">
  <class name="Contact" table="Contact">
    <id name="Id" column="Id" type="int">
      <generator class="native" />
    </id>

    <property name="Name" column="name" type="string"/>
    <property name="Address" column="address" type="string"/>
    <property name="Guid" column="guid" type="string"/>

    <set lazy="true" batch-size="6" table="phone_number" name="PhoneNumbers" fetch="join" inverse="false" cascade="all" >
      <key foreign-key="FK_contact_phone_number" column="contact_id"/>
      <one-to-many class="PhoneNumber" />
    </set>

  </class>
</hibernate-mapping>

Le fichier de mappage pour Phone_number table est la suivante :

<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="OfflineDbSyncWithNHibernate" default-lazy="true" namespace="OfflineDbSyncWithNHibernate.Models">
  <class name="PhoneNumber" table="phone_number">
    <id name="Id" column="Id" type="int">
      <generator class="native" />
    </id>
    <property name="ContactId" column="contact_id" />
    <property name="Number" column="phone_number" />
  </class>
</hibernate-mapping>

Le Contact et Numéro de classes sont :

namespace OfflineDbSyncWithNHibernate.Models
{
    public class Contact
    {
        public virtual int Id { get; set; }
        public virtual string Name { get; set; }
        public virtual string Address { get; set; }
        public virtual string Guid { get; set; }
        public virtual PhoneNumbers PhoneNumbers { get; set; }
    }
}

namespace OfflineDbSyncWithNHibernate.Models
{
    public class PhoneNumber
    {
        public virtual int Id { get; set; }
        public virtual int ContactId { get; set; }
        public virtual string Number { get; set; }
    }
}

namespace OfflineDbSyncWithNHibernate.Models
{
    public class PhoneNumbers : List<PhoneNumber>
    {
    }
}

Lorsque je charge le contact et phone_numbers séparément, il fonctionne, mais après l'ajout de l'élément de jeu pour obtenir un un-à-plusieurs relation nhibernate donne une erreur :

NHibernate.MappingException: Invalide informations de mappage spécifié pour le type OfflineDbSyncWithNHibernate.Modèles.Contact, vérifiez votre fichier de mappage pour la propriété type de l'inadéquation

Je suis nouvelle dans nHibernate donc je ne sais pas si il y a une erreur dans l'élément de jeu ou je ne devrais même pas être à l'utiliser. Toute aide sera appréciée.

OriginalL'auteur Nazgul | 2009-03-14