Protobuf-net serializar enum com valor fora do intervalo

C # permite atribuir qualquer valor inteiro a enum.

Quando tento serializar (via protobuf-net) o objeto com o campo enum cujo valor está fora do intervalo, ele lança uma exceção: Nenhum valor wire é mapeado para o enum PersonLevel.

Meu enum PersonLevel não possui o atributo Flags.

[ProtoContract(ImplicitFields = ImplicitFields.AllFields)]
public enum PersonLevel
{
  Unknown = 1
}

[ProtoContract(ImplicitFields = ImplicitFields.AllFields)]
public class Person
{
  ...

  public PersonLevel PersonLevel { get; set; }

  ...
}
var ms = new MemoryStream();

var person = new Person
{
  ...
  PersonLevel = (PersonLevel) 500
  ...
};

Serializer.Serialize(ms, person); //No wire-value is mapped to the enum PersonLevel

Existe alguma facilidade para fazê-lo sem alterar os objetos de negócios (talvez quaisquer attrubutes de protobuf)?

questionAnswers(2)

yourAnswerToTheQuestion