Aufruf von getIt () mit verschiedenen Offsets gibt mir schließlich eine 'Ungültige Operation'-Ausnahme mit zusätzlichen Informationen, dass' die Eingabefolge unzureichende Elemente hatte '
Ich versuche zu verstehen, warum, da sowohl Seq.Skip als auch Seq.take keine Ausnahme gemäß der Online-Dokumentation erzeugen FSharp Sammlungen
Version: (Visual Studio 2010) Beta 1
Ich weiß, das ist eine alte Frage, aber für den Fall, dass jemand bei einer Suche auf die Art und Weise auftaucht, wie ich es tat:
Sie können Seq.truncate verwenden, wenn Sie höchstens
Sowohl Seq.skip als auch Seq.take werfen diese Ausnahme, wenn sie mit einem Wert größer als die Sequenz aufgerufen werden. Sie können den Quellcode in Seq.fs überprüfen, um zu sehen, warum:
%Vor%Hier ist eine etwas kürzere "skipSafe" Implementierung mit eingebauten Funktionen:
%Vor%Oder wenn Sie es direkt in Ihre aktuelle Pipeline einfügen möchten, ersetzen Sie
%Vor%mit
%Vor%