Hi,
If you have a client/server set up using fast serialization, then you break compatibility by adding a field. If you don't get all the clients updated then you get a situation where the fast serializer on the client unpacks what it can but in offset fields resulting in runtime errors, for example in the field getters you can get
System.InvalidCastException: 'Unable to cast object of type 'System.String' to type 'System.Int32'.'
This is fine and expected behaviour, but would you consider adding a GUID or some other version indicator to the generated classes so that it would be possible to compare server and client side model versions?
E.g. At app startup you could call some method on the server, "what model version, or date generated, are you". If the client is different it could choose to exit or fall back to Xml serialization.
Thanks for reading.