J'ai un int nullable venant de la base de données d'une procédure stockée que je sais n'aura pas une valeur nulle. J'ai fait le beuglement:C# Meilleures pratiques - Quelle est la meilleure pratique lors de la conversion int? int
public List<EngineerDetails> GetCarouselEngineerDetailsList(int customerID)
{
using (var db = new MainEntities80())
{
var foo0= db.procedure().Select(s => new fooo()
{
foo= s.foo,
foo2 = s.foo2,
foo3 = s.foo3 ,
foo4 = s.foo4 ,
x = s.CurrentJobId.Value
}).ToList();
return foo0;
}
}
Mais je voulais savoir, mais je sais que la valeur sera toujours là. Est-ce une bonne pratique de vérifier avant d'obtenir la valeur. Peut-être avec une expression tournante. Ou parce que nous savons que ce ne sera pas nul si nous oublions le chèque?
Pourquoi est-ce un 'null' nullable du tout s'il ne peut jamais être nul? –
@TimSchmelter: Je peux penser à un certain nombre de raisons pour lesquelles cela pourrait avoir du sens - par exemple, il ne peut pas être non nul pour * all * rows, mais si 's' est le résultat d'une requête, le non-null le contrôle peut déjà avoir été effectué là. –
@Oliver: Votre code n'a pas de sens. Pourquoi utilisez-vous toujours un 'int?' Là au lieu d'assigner la valeur à une variable 'int'. Sinon, tout le code doit toujours savoir que c'est un nullable qui ne peut en réalité jamais être nul. –