Enum vs int wrapper struct
Normally it would disgust me, but you appear to have a valid reason to use it, which stems from the pre-existing disgusting situation that you have to cope with these data objects that use ints.

The only thing I would ask is, why can these data objects not use enums? What is it about their auto-generation that precludes enums from being used?  I do not think that enums receive any special handling at the IL level, they are handled just like primitive types are.