public void Read(IProtocolReader protocol, ModelHeader modelHeader) { for (var a = 0; a < modelHeader.PropertyCount; a++) { var propertyHeader = protocol.ReadModelPropertyStart(); if (!this.ReadProperty(protocol, propertyHeader)) { throw new Exception("Property " + propertyHeader.PropertyName + " not recognized"); } protocol.ReadModelPropertyEnd(); } }