i have several classes with members called \'Id\'. Originally i wanted to store these as ints, but i would like some layer of protection, to make sure i don\'t accidentally
You cannot inherit value types (structs, including Int32) in .NET.
The closest option would be to make a struct which contained nothing but your Int32. This would require the same space, but could be restricted to your exact struct. You could then change your struct later to include other information, if needed. (Be aware, though, that this will probably be a breaking API change.)