public CustomerMap()
        {
            this.ToTable("Customer");
            this.HasKey(c => c.Id);
            this.Property(u => u.Username).HasMaxLength(1000);
            this.Property(u => u.Email).HasMaxLength(1000);
            this.Property(u => u.EmailToRevalidate).HasMaxLength(1000);
            this.Property(u => u.SystemName).HasMaxLength(400);
            
            //多对多
            this.HasMany(c => c.CustomerRoles)
                .WithMany()//没有传任何参数则代表对方没有导航属性到此实体
                .Map(m => m.ToTable("Customer_CustomerRole_Mapping")); 
            //一对一,但BillingAddress表没有导航到Customer的属性,此customer生成的字段BillingAddress_Id是可以为空的
            this.HasOptional(c => c.BillingAddress); 
        }
===============================================================================================
 public partial class CustomerAttributeValueMap : NopEntityTypeConfiguration<CustomerAttributeValue>
    {
        public CustomerAttributeValueMap()
        {
            this.ToTable("CustomerAttributeValue");
            this.HasKey(cav => cav.Id);
            this.Property(cav => cav.Name).IsRequired().HasMaxLength(400);
            //一对多,双方都有导航属性
            this.HasRequired(cav => cav.CustomerAttribute)
                .WithMany(ca => ca.CustomerAttributeValues)
                .HasForeignKey(cav => cav.CustomerAttributeId);
        }
    }
原文:http://www.cnblogs.com/evemen/p/7181925.html