Quelqu'un peut-il expliquer ce qui ne va pas avec la signature de méthode suivante écrite en utilisant C# 4.0?Pourquoi ne puis-je pas utiliser DateTime.MinValue et int.MinValue comme valeurs facultatives dans C# 4.0?
public void Test(string arg1 = string.Empty, DateTime arg2 = DateTime.MinValue){}
Je comprends la différence entre « » et string.Empty en termes de compilation vérification mais sûrement la façon dont les paramètres facultatifs ont été mises en œuvre dans C# 4.0 est assez insuffisante si vous ne pouvez pas déclarer un type de valeur raisonnable Comparez le style null?
Si arg2 = DateTime.MinValue, serait-ce toujours cette valeur constante? Il pourrait être redondant aux yeux du compilateur? – brumScouse
Quelle est l'erreur que vous obtenez? – dotariel
duplication possible de [Impossible d'utiliser String.Empty comme valeur par défaut pour un paramètre facultatif en C# - alors quel est le point?] (Http://stackoverflow.com/questions/2701314/cannot-use-string-empty-as- a-default-value-for-a-optional-parameter-in-c-sharp) – nawfal