je reçois l'erreur suivante lors de l'exécution FXCop:FXCop casting Attention
CA1800: Microsoft.Performance: 'obj', une variable, est casté en type plusieurs fois 'travail' dans la méthode « ProduitsController .Détails (int, int) '. Mettre en cache le résultat de la 'comme' opérateur ou coulée directe pour éliminer le castclass redondant instruction
code:
object obj = repository.GetJobOrPlace(jobId);//Returns (object) place or (object) product
if (obj != null)
{
if (obj is Job)
{
Job j = (Job) obj;
Debug.WriteLine(j.Title);
}
else if (obj is Place)
{
Place p = (Place) obj;
Debug.WriteLine(p.Title);
}
}
Quel est le problème avec ça? Je ne peux voir qu'un seul casting: Job j = (Job) obj.
L'opérateur "is" est également une distribution en ce qui concerne .NET. –