I have sort of resolve the issue by adding KeyColumn, but now getting another hairy issue, I think possibly on how I am dealing with model collections.
HasMany(x => x.Teams)
.KeyColumn("leagueId")
.Cascade.AllDeleteOrphan();
{"A collection with cascade=\"all-delete-orphan\" was no longer referenced by the owning entity instance: WhalleyBotEnhanced.Console.Spike.Models.MyLeague.Teams"}
In my model collection member property setters, I receive IList<T> and wrap it in an ObservableCollection<T>.
However, scanning some SO and other blogs, this may not ba a kosher thing to want to do with NH or Fluent, which IIRC, makes sense.
For improved model observability, perhaps want to have a sister internal observable collection handling that aspect. Which handles the bidirectional aspects, setting and nullifying of parents and what not.
Does this pattern sound familiar to anyone? Sound about right? I cannot imagine this is that uncommon of a scenario, quite honestly.
Cheers, best!
Michael