I have tried to implement your demo of IIdGenerator and I get the following error:
The formatter threw an exception while trying to deserialize the message:
There was an error while trying to deserialize parameter
http://ideablade.com/EntityModel:workState.
The InnerException message was 'Element 'http://ideablade.com/EntityModel:NextIdGenerator'
contains data from a type that maps to the name
'http://schemas.datacontract.org/2004/07/LOC.AMP.Data.DomainModel:NumericIdGenerator'.
The deserializer has no knowledge of any type that maps to this name. Consider using a
DataContractResolver or add the type corresponding to 'NumericIdGenerator' to the list
of known types - for example, by using the KnownTypeAttribute attribute or by adding it to the
list of known types passed to DataContractSerializer.'. Please see InnerException for more details.
at IdeaBlade.EntityModel.RemoteEntityServerProxyBase.CheckConnection(Exception pException)
at IdeaBlade.EntityModel.EntityServerProxy.SaveChanges(SaveWorkState workState)
at IdeaBlade.EntityModel.EntityManager.SaveEntitiesCore(SaveWorkState workState)
Any help would be great.