Using string for phone and zip makes things simpler—no issues with leading zeros, and input masking just works better with it in MVC forms.