Dans un contrôleur C#, j'ai une fonction définie avec un paramètre optionnel qui est défini par défaut sur null (voir l'exemple de code ci-dessous). Lors du premier chargement de la page, la fonction est appelée et le filtre est transmis en tant qu'objet initialisé, bien que la valeur par défaut soit null. Je voudrais qu'il soit nul la première fois que la page se charge. Y a-t-il un moyen de faire cela?Paramètres facultatifs en C# - Valeur par défaut définie par défaut
public ActionResult MyControllerFunction(CustomFilterModel filter = null)
{
if (filter == null)
doSomething(); // We never make it inside this "if" statement.
// Do other things...
}
Cette action est résolue par la définition de l'itinéraire suivant:
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Project", action = "Index", id = UrlParameter.Optional } // Parameter defaults
);
L'appelez-vous avec un argument? Vous ne l'appelez probablement pas d'une manière qui autorise le paramètre par défaut. – BradleyDotNET
@BradleyDotNET, TimSchemelter, c'est une action MVC, la méthode est appelée par le framework MVC, pas par le code utilisateur –
A quoi ressemble votre définition de route? – adam0101