Symon,
Thanks for the reply. The ClassD collection must be inverse because the foreign key in the table from class D to class C is not nullable. However, that should not be a problem because here's how I add a ClassD item to the collection in ClassC:
Code:
public virtual void AddClassD(ClassD item)
{
item.ClassC = this;
classDList.Add(item);
}
This is a well worn pattern and works fine. When I save a ClassC directly, ClassD persists just fine. The place that things are breaking down I believe is the many-to-one association to ClassC from ClassB. It is not cascading save-updates because of the lazy proxy. As I mentioned, when I change ClassC to not lazy in the ClassB map, all is well.
Tim