Ich erhalte eine System.IndexOutOfRangeException auf List.Find(). Das Problem ist, dass es nicht konsistent ist und nur in der Produktionsumgebung passiert. Gehen Sie durch die MSDN-Dokumentation für die List.Find(Predicate match) method, aber es heißt über Index außerhalb des Bereichs Ausnahme. In welchem Szenario würde System.IndexOutOfRangeException von der List.Find() -Methode ausgelöst werden?Liste <T> .Find werfen System.IndexOutOfRangeException
Dies geschieht in einer ASP.Net-Anwendungen. Der Code ist in einer statischen Methode in etwa so:
private static T GetReflectionInfo<T>(object obj, string memberName) where T : System.Reflection.MemberInfo
{
var knownInfos = new List<MemberInfo>();
/// populate the list
/// this line is where the exception is thrown. T is the generic type passed in.
T info = (T) knownInfos.Find(item => item is T && item.Name.EqualsIgnoreCase(memberName));
}
[Update] - das Problem etwas falsch mit einem der Knoten entpuppte. Danke für deine Antworten und Kommentare.
Zeigen Sie uns Ihren Code. –
Wie wird diese Liste beibehalten? In einer Web-Umgebung benötigen freigegebene Ressourcen eine spezielle Handhabung. – leppie
Verwenden Sie dies in einer Multithread-Anwendung? – JaredPar