Compilerfout CS0151

Een waarde van een integraal type verwacht

Er is een variabele gebruikt in een situatie waarin een integraal gegevenstype vereist was. Zie Typen voor meer informatie.

Voorbeeld van dubbelzinnige conversie

Deze fout kan optreden wanneer er geen conversie is of als de beschikbare impliciete conversies resulteren in een dubbelzinnige situatie. In het volgende voorbeeld wordt CS0151 gegenereerd:

public class MyClass
{
   public static implicit operator int (MyClass aa)
   {
      return 0;
   }

   public static implicit operator long (MyClass aa)
   {
      return 0;
   }

   public static void Main()
   {
      MyClass a = new MyClass();

      // Compiler cannot choose between int and long.
      switch (a)   // CS0151
      // try the following line instead
      // switch ((int)a)
      {
         case 1:
            break;
      }
   }
}