Discriminator fields aren't used by your own code, they're not set by your code for instance. So them being an enum is redundant, as their underlying type is int in general.
There's another detail which makes them a bit more cumbersome to use if they're an enum: the value, if it's an enum, first has to be converted to an instance of that enum before the materializer can perform the check which type to use to instantiate the data into.
Is there any specific reason you want to use an enum for this field?