Je viens de lire la réponse absolue à ce poste:
Problem inserting string or NULL into SQL Server databaseproblème insérer chaîne ou NULL dans la base de données SQL Server
-moi si je me trompe, mais peut le ?? - opérateur non seulement être utilisé sur deux des variables du même type, sinon je l'apprécierais grandement, si quelqu'un pouvait résoudre mon problème mineur.
J'ai essayé d'insérer du code dans mon projet similaire à celui ci-dessous.
Dictionary<string, string> strings = new Dictionary<string, string>()
{
{"@param0", strParam0},
{"@param1", strParam1},
{"@param2", strParam2}
};
foreach (string param in strings.Keys)
{
cmd.Parameters.AddWithValue(param, strings[param] ?? DBNull.Value);
}
Mais Visual Studio se plaint avec le message suivant:
« Opérateur '??' ne peut pas être appliqué à des opérandes de type 'string' et 'System.DBNull' "
Il y a un autre défaut - il ne sera pas compilé! Vous ne pouvez pas convertir directement de la chaîne en DBNull, que vous utilisiez ou non? ou?: pour cela. – LukeH
* l'essaie * Vous avez raison ... Il faut le tour ci-dessus (objet) DBNull.Value –