FIX: System.ArgumentOutOfRangeException treedt af en toe met ADO.NET

Vertaalde artikelen Vertaalde artikelen
Artikel ID: 836874 - Bekijk de producten waarop dit artikel van toepassing is.
Alles uitklappen | Alles samenvouwen

Symptomen

In een ADO.NETTO toepassing u afwisselend foutbericht de volgende uitzondering:
System.ArgumentOutOfRangeException: Index is buiten bereik. Moet negatief en lager dan de grootte van de collectie. Parameternaam: index

Oorzaak

U ontvangt dit foutbericht als maken of DataSet-objecten vernietigen (zoals eenDataViewobject) in een gebeurtenishandler voor eenDataSetobject of een object dat is gekoppeld aan eenDataSetobject. Deze fout is bijvoorbeeld gereproduceerd in een toepassing die een rasterbesturingselement onderliggende makenDataViewobjecten in eenListChanged activeert na wijziginggebeurtenis-handler voor het raster. Hierdoor kan de interne status van de onderliggendeDataSetobject tijdens een bewerking waarbij statische blijven moeten wijzigen.

Oplossing

Een ondersteunde hotfix is nu beschikbaar bij Microsoft, maar is alleen bedoeld in dit artikel beschreven probleem op te lossen. Alleen toepassen op systemen waarop dit specifieke probleem. Deze hotfix wellicht extra worden getest. Als u geen ernstige problemen ondervindt, is het daarom raadzaam te wachten op het volgende servicepack waarin deze hotfix is opgenomen.

Dit probleem onmiddellijk contact op met Microsoft Product Support Services om de hotfix te verkrijgen. Bezoek de volgende Microsoft-website voor een volledige lijst met telefoonnummers van Microsoft Product Support Services en informatie over ondersteuningskosten:
http://support.Microsoft.com/contactus/?ws=support
OpmerkingIn speciale gevallen kunnen kosten die normaal verbonden worden geannuleerd als een medewerker van Microsoft bepaalt dat een specifieke update de oplossing van uw probleem. De gebruikelijke ondersteuningskosten gelden voor extra ondersteuningsvragen die niet in aanmerking voor de specifieke update in kwestie komen.De Engelse versie van deze hotfix heeft de bestandskenmerken (of hoger) die in de volgende tabel worden weergegeven. De datums en tijden voor deze bestanden worden weergegeven in coordinated universal time (UTC). Wanneer u de bestandsinformatie weergeeft, wordt deze naar lokale tijd geconverteerd. Het verschil tussen UTC en lokale tijd, gebruikt u deTijdzonetabblad in het onderdeel Datum en tijd in het Configuratiescherm.
   Date         Time   Version            Size    File name
   --------------------------------------------------------------
   02-Mar-2004  18:39  1.1.4322.1007   1,294,336  System.data.dll                                             

Workaround

Niet maken of vernietigen DataSet-objecten (zoals eenDataViewobject) binnen een gebeurtenis-handler voor eenDataSetobject.

Status

Microsoft heeft bevestigd dat dit probleem in de Microsoft-producten die worden vermeld in de sectie 'Van toepassing op' van dit artikel is.
De call-stack voor deze uitzondering is afhankelijk van de functionaliteit van uw toepassing en de exacte oorzaak van de fout. Zijn de volgende twee voorbeelden zijn opgetreden bij het kindDataViewobjecten gemaakt in deListChanged activeert na wijziginggebeurtenis-handler voor een besturingselement

Voorbeeld van aanroepstack 1

System.Collections.ArrayList.get_Item(Int32 index)
Sstem.Data.DataTable.RecordStateChanged(Int32 record1, DataViewRowState oldState1, DataViewRowState newState1, Int32 record2, DataViewRowState oldState2, DataViewRowState newState2)
System.Data.DataTable.SetNewRecord(DataRow row, Int32 proposedRecord, DataRowAction action, Boolean isInMerge)
System.Data.DataRow.EndEdit()
System.Data.DataRow.set_Item(DataColumn column, Object value)
System.Data.DataRow.set_Item(String columnName, Object value)

Voorbeeld van aanroepstack 2

System.Collections.ArrayList.get_Item(Int32 index)
System.Data.DataTable.ResetIndexes()
System.Data.Merger.MergeTable(DataTable src, DataTable dst)
System.Data.Merger.MergeTableData(DataTable src)
System.Data.Merger.MergeDataSet(DataSet source)
System.Data.DataSet.Merge(DataSet dataSet, Boolean preserveChanges, MissingSchemaAction missingSchemaAction)

OpmerkingDeze zijn slechts voorbeelden en niet de enige stacks met deze fout kunnen optreden.

Referenties

Klik op het volgende artikelnummer in de Microsoft Knowledge Base voor meer informatie:
824684Beschrijving van de standaardterminologie die wordt gebruikt om software-updates voor Microsoft te beschrijven
Voor meer informatie over een soortgelijke uitzondering met een eerdere versie van ADO optreedt.NET, klikt u op het volgende artikelnummer in de Microsoft Knowledge Base:
332215FIX: ' System.ArgumentOutOfRangeException: Index is buiten bereik ' fout met SqlClient.SqlConnection.Open()
OpmerkingDe correctie voor het Microsoft Knowledge Base-artikel 332215 is al opgenomen in de..NET Framework versie 1.1.

Eigenschappen

Artikel ID: 836874 - Laatste beoordeling: zaterdag 5 maart 2011 - Wijziging: 2.0
De informatie in dit artikel is van toepassing op:
  • Microsoft ADO.NET 1.1
Trefwoorden: 
kbhotfixserver kbqfe kbmt KB836874 KbMtnl
Automatisch vertaald artikel
BELANGRIJK: Dit artikel is vertaald door de vertaalmachine software van Microsoft in plaats van door een professionele vertaler. Microsoft biedt u professioneel vertaalde artikelen en artikelen vertaald door de vertaalmachine, zodat u toegang heeft tot al onze knowledge base artikelen in uw eigen taal. Artikelen vertaald door de vertaalmachine zijn niet altijd perfect vertaald. Deze artikelen kunnen fouten bevatten in de vocabulaire, zinsopbouw en grammatica en kunnen lijken op hoe een anderstalige de taal spreekt en schrijft. Microsoft is niet verantwoordelijk voor onnauwkeurigheden, fouten en schade ontstaan door een incorrecte vertaling van de content of het gebruik ervan door onze klanten. Microsoft past continue de kwaliteit van de vertaalmachine software aan door deze te updaten.
De Engelstalige versie van dit artikel is de volgende:836874
Vrijwaring inhoud KB-artikelen over niet langer ondersteunde producten
Dit artikel heeft betrekking op producten waarvoor Microsoft geen ondersteuning meer biedt. Daarom wordt dit artikel alleen in de huidige vorm aangeboden en wordt het niet meer bijgewerkt.

Geef ons feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com