Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Command.Parameters[@name].Value Richtige Syntax

Ok, also habe ich das zum Laufen gebracht. Das Hauptproblem war, dass dies null vergleichen muss mit null , jedoch ein int darf nicht null sein da es sich um einen Werttyp handelt.

Also musste ich einige Änderungen an meinem Code vornehmen und ich habe es mit der Problemumgehung

zum Laufen gebracht
int? AreaCode = null;

Dadurch konnte ich meinen Code ändern:

mySqlCommand.Parameters["@AreaCode"].Value = (PModel.AreaCode.HasValue ? PModel.AreaCode.Value : object)DBNull.Value );

Für alle, die nicht wissen, was hier passiert:

Der Operator ? verleiht einem Werttyp die Fähigkeit, keinen Wert zu haben , also kann es =null sein .

dh.

int n = 0;
int? n = null;

bool b = false;
bool? b = null;