Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
foreach-instructie kan niet worden uitgevoerd op variabelen van het type 'type' omdat er meerdere instantiëringen van 'interface' worden geïmplementeerd, probeer te casten naar een specifieke interface-instantiëring
Het type neemt over van twee of meer exemplaren van IEnumerator<T>, wat betekent dat er geen unieke opsomming is van het type dat foreach kan worden gebruikt. Geef het type IEnumerator<T> op of gebruik een andere lusconstructie.
Opmerking
In het volgende voorbeeld wordt CS1640 gegenereerd:
// CS1640.cs
using System;
using System.Collections;
using System.Collections.Generic;
public class C : IEnumerable, IEnumerable<int>, IEnumerable<string>
{
IEnumerator<int> IEnumerable<int>.GetEnumerator()
{
yield break;
}
IEnumerator<string> IEnumerable<string>.GetEnumerator()
{
yield break;
}
IEnumerator IEnumerable.GetEnumerator()
{
return (IEnumerator)((IEnumerable<string>)this).GetEnumerator();
}
}
public class Test
{
public static int Main()
{
foreach (int i in new C()){} // CS1640
// Try specifying the type of IEnumerable<T>
// foreach (int i in (IEnumerable<int>)new C()){}
return 1;
}
}