In the most simplified version , here is my problem

public class D{
public List<A> ListofA {get;set;}
}
public interface A{
}
public class B implements A{
}
public class C implements A{
}
class B maps to Table B
class C maps to Table C
A is just an interface and is not mapped to any table.
How do I define the polymorphic (many-to-many) association between D -> A
I am using NHibernate with FluentMapping.
I am attemped to answer my own question.
However I would like to find out BETTER/ MORE RATIONAL solution to this problem.
Here is my solution:
Redesign
Class DI redesign
class DasNO changes in the remaining entities.
This design change should allow me to map
Fluent Mapping
for the above redesigned class structure
Guess I choose to use add a new relation between
Class DandClass Ais thatI was not able to find a way to map it directly in Fluent.