Je passe en revue du code écrit par un autre développeur et je ne sais pas quoi long?
veux dire:
protected string AccountToLogin(long? id)
{
string loginName = "";
if (id.HasValue)
{
try
{....
long
est identique à Int64
Le ?
signifie qu'il est nul
Un type nullable peut représenter la plage normale de valeurs pour son type de valeur sous-jacent, plus une valeur null supplémentaire
Exemple nul:
int? num = null;
if (num.HasValue == true)
{
System.Console.WriteLine("num = " + num.Value);
}
else
{
System.Console.WriteLine("num = Null");
}
Cela vous permet de vérifier réellement une valeur null
au lieu d'essayer d'attribuer une valeur arbitraire à quelque chose pour vérifier si quelque chose a échoué.
J'ai en fait écrit un blog à ce sujet ici .
longue? est un entier nullable de 64 bits.
Pour clarifier, nullable signifie qu'il peut être nul ou un nombre entier (0, 1, etc.).
"longue?" est un entier signé 64 bits nullable. C'est équivalent à Nullable<Int64>
.
long?
est un type nullable. Cela signifie que le paramètre id
peut avoir une valeur longue ou être défini sur null
. Jetez un œil aux propriétés HasValue
et Value
de ce paramètre.
C'est une déclaration de type nullable .