There seems to be a problem in EntityValueBinder where when the view has
@Html.HiddenFor(m => m.Entity.ChildEntity.Id)
It does not bind the ChildEntity properly, but requires a change to
var valueProviderResult = bindingContext.ValueProvider.GetValue(bindingContext.ModelName + ".Id");
Originally noticed problem when reported problem for SharpLite in this commit:
Not sure if the old code was providing any particular behaviour, so try the old method of getting the value first then try to get the value through Id property.
The "Id" is already hard coded around the coded.