Ok så jag fick det här att fungera. Huvudproblemet var att detta måste jämföras med null med null , dock en int kan inte vara null eftersom det är en värdetyp.
Så jag var tvungen att göra lite justeringar med min kod och jag fick detta att fungera med lösningen
int? AreaCode = null;
Detta gjorde att jag kunde ändra min kod:
mySqlCommand.Parameters["@AreaCode"].Value = (PModel.AreaCode.HasValue ? PModel.AreaCode.Value : object)DBNull.Value );
För alla som inte är medvetna om vad som händer här:
Operatören ? ger en värdetyp förmågan att ha inget värde , så det kan =null .
dvs.
int n = 0;
int? n = null;
bool b = false;
bool? b = null;