2010-08-15 9 views
0

Je reçois l'erreur suivante en utilisant Courant:Fluent NHibernate Mapping Error

12: 16: 47.879 erreur [7] Configuration [(null)] - Une association de la table d'adresses fait référence à une classe unmapped: System.Int32 NHibernate.MappingException: une association de la table Adresse fait référence à une classe unmapped: System.Int32

public class Address { 
     public Address() { 
     } 
     public virtual int AddressId { 
      get; 
      set; 
     } 
     public virtual string AddressLine1 { 
      get; 
      set; 
     } 
     public virtual string AddressLine2 { 
      get; 
      set; 
     } 
     public virtual string AddressLine3 { 
      get; 
      set; 
     } 
     public virtual string BuildingNumber { 
      get; 
      set; 
     } 
     public virtual string City { 
      get; 
      set; 
     } 
     public virtual string County { 
      get; 
      set; 
     } 
     public virtual System.DateTime MovedIn { 
      get; 
      set; 
     } 
     public virtual System.DateTime MovedOut { 
      get; 
      set; 
     } 
     public virtual int PersonId { 
      get; 
      set; 
     } 
     public virtual string PostCode { 
      get; 
      set; 
     } 
    } 

public class AddressMap : ClassMap<Address> { 

     public AddressMap() { 
    Table("Address"); 
    LazyLoad(); 
      Id(x => x.AddressId).GeneratedBy.HiLo("1000"); 
    Map(x => x.AddressLine1).Length(100).Not.Nullable(); 
    Map(x => x.AddressLine2).Length(100).Not.Nullable(); 
    Map(x => x.AddressLine3).Length(100).Not.Nullable(); 
    Map(x => x.BuildingNumber).Length(250).Not.Nullable(); 
    Map(x => x.City).Length(250).Not.Nullable(); 
    Map(x => x.County).Length(250).Not.Nullable(); 
    Map(x => x.MovedIn).Not.Nullable(); 
    Map(x => x.MovedOut).Not.Nullable(); 
    References(x => x.PersonId).Column("PersonId").Not.Nullable(); 
    Map(x => x.PostCode).Length(15).Not.Nullable(); 
     } 
    } 


[TestFixture] 
    public class TestBase 
    { 
     protected SessionSource SessionSource { get; set; } 
     protected ISession Session { get; private set; } 

     [SetUp] 
     public void SetupContext() 
     { 
      var cfg = Fluently.Configure() 
       .Database(MsSqlConfiguration.MsSql2005.ConnectionString(
        "Data Source=localhost;Initial Catalog=ted;User ID=sa;Password=xxxx;")); 
      SessionSource = new SessionSource(cfg.BuildConfiguration()//**Error Here** 
               .Properties, new TestModel()); 
      Session = SessionSource.CreateSession(); 
      SessionSource.BuildSchema(Session); 
     } 
     [TearDown] 
     public void TearDownContext() 
     { 
      Session.Close(); 
      Session.Dispose(); 
     } 
    } 

Je reçois une erreur sur ma configuration initiale, j'ai été sur elle à plusieurs reprises et je ne sais pas exactement ce que je fais mal? Quelqu'un peut-il voir quelque chose d'évident? Je peux confirmer qu'il n'y a que 2 int dans la base de données pour cette table. AddressId - Non identité PK et PersonId non identité FK

Répondre