J'ai un peu de code :
using (OAZISDBDataContext ctx = new OAZISDBDataContext())
{
IEnumerable<DBContactDetail> details = ctx.ExecuteQuery<DBContactDetail>("exec [dbo].[zna_contact] {0}, {1}",
"test", "19601023",
}
Cependant, je souhaite également pouvoir transmettre des valeurs vides à la procédure stockée afin qu'elle ne les utilise pas.
Maintenant, avec les chaînes, c'est facile, je peux simplement passer String.Empty et cela fonctionnera. Cependant, si je veux passer des dates vides, cela pose un problème.
J'ai évidemment essayé :
using (OAZISDBDataContext ctx = new OAZISDBDataContext())
{
IEnumerable<DBContactDetail> details = ctx.ExecuteQuery<DBContactDetail>("exec [dbo].[zna_contact] {0}, {1}",
"test", null,
}
Mais cela ne fonctionne pas, cela donne l'erreur :
System.Exception : Un paramètre de requête ne peut pas être de type System.Object.
Après quelques lectures, j'ai découvert que l'ExecuteCommand ne prend pas en charge les paramètres nuls, alors que la spécification affirme qu'elle le devrait.
Quelqu'un a-t-il rencontré ce problème et trouvé une solution de contournement ?
Merci beaucoup.