private IEnumerable <String> GetTempNavPropNames(EntityAspect entityAspect) { var npNames = entityAspect.EntityType.NavigationProperties.Where(np => { if (!np.IsScalar) { return(false); } var val = (IEntity)entityAspect.GetRawValue(np.Name); return(val != null && val.EntityAspect.HasTemporaryKey); }).Select(np => np.Name); return(npNames); }