Need help with NHibernate / Fluent NHibernate mapping
        Posted  
        
            by Mark Boltuc
        on Stack Overflow
        
        See other posts from Stack Overflow
        
            or by Mark Boltuc
        
        
        
        Published on 2010-03-17T01:49:23Z
        Indexed on 
            2010/03/17
            1:51 UTC
        
        
        Read the original article
        Hit count: 770
        
nhibernate
|fluent-nhibernate
|nhibernate-mapping
|mapping
|object-relational-mapping
Let's say your have the following table structure:
                  ==============================  
                  | Case                       |
                  ==============================
                  | Id           | int         |
                  | ReferralType | varchar(10) |
        +---------| ReferralId   | int         |---------+
        |         ==============================         |
        |                      |                         |
        |                      |                         |
======================  ======================  ======================        
| SourceA            |  | SourceB            |  | SourceC            |
======================  ======================  ======================
| Id   | int         |  | Id   | int         |  | Id   | int         |
| Name | varchar(50) |  | Name | varchar(50) |  | Name | varchar(50) |
======================  ======================  ======================
Based on the ReferralType the ReferralId contains id to the SourceA, SourceB, or SourceC
I'm trying to figure out how to map this using Fluent NHibernate or just plain NHibernate into an object model. I've tried a bunch of different things but I haven't been succesful. Any ideas?
The object model might be something like:
public class Case
{ 
  public int Id { get; set; }
  public Referral { get; set; }
}
public class Referral
{
  public string Type { get; set; }
  public int Id { get; set; }
  public string Name { get; set; }
}
© Stack Overflow or respective owner