Avertissement du compilateur (niveau 1) CS1690
Mise à jour : novembre 2007
Message d'erreur
L'accès à un membre sur 'membre' peut provoquer une exception runtime, car il s'agit d'un champ d'une classe marshalée-par-référence
Accessing a member on 'member' may cause a runtime exception because it is a field of a marshal-by-reference class
Cette erreur se produit lorsque vous essayez d'appeler une méthode, une propriété ou un indexeur sur le membre d'une classe qui dérive de MarshalByRefObject et que le membre est un type valeur. Pour résoudre l'avertissement, copiez le membre dans une variable locale et appelez la méthode cette variable.
L'exemple suivant génère l'erreur CS1690 :
// CS1690.cs
using System;
class WarningCS1690: MarshalByRefObject
{
int i = 5;
public static void Main()
{
WarningCS1690 e = new WarningCS1690();
e.i.ToString(); // CS1690
// OK
int i = e.i;
i.ToString();
e.i = i;
}
}