การแก้ไข: System.ArgumentOutOfRangeException ขึ้นเป็นระยะ ๆ ด้วย ADOสุทธิ

การแปลบทความ การแปลบทความ
หมายเลขบทความ (Article ID): 836874 - ผลิตภัณฑ์ที่เกี่ยวข้องในบทความนี้
ขยายทั้งหมด | ยุบทั้งหมด

อาการ

ในข้อ ADOแอพลิเคชันสุทธิ คุณอาจได้เป็นระยะ ๆ รับข้อความแสดงข้อผิดพลาดข้อยกเว้นต่อไปนี้:
System.ArgumentOutOfRangeException: ดัชนีที่มีอยู่ในช่วงที่ ต้องเป็นบวก และน้อยกว่าขนาดของคอลเลกชัน ชื่อพารามิเตอร์: ดัชนี

สาเหตุ

คุณได้รับข้อความแสดงข้อผิดพลาดนี้ถ้าคุณสร้าง หรือทำลายวัตถุที่เกี่ยวข้องกับชุดข้อมูล (เช่นDataViewวัตถุ) ในตัวจัดการเหตุการณ์สำหรับการชุดข้อมูลวัตถุ หรือใช้ ในวัตถุที่เชื่อมโยงกับการชุดข้อมูลวัตถุ ตัวอย่างเช่น ข้อผิดพลาดนี้ไม่ปลอดภัยในโปรแกรมประยุกต์ที่ประกอบด้วยการควบคุมของเส้นตารางที่ถูกสร้างลูกDataViewวัตถุในแบบListChangedตัวจัดการเหตุการณ์สำหรับเส้นตาราง ซึ่งช่วยให้รัฐภายในของชุดข้อมูลวัตถุที่มีการเปลี่ยนแปลงระหว่างการดำเนินการที่มันควรคงคง

การแก้ไข

โปรแกรมแก้ไขด่วนที่สนับสนุนได้จาก Microsoft แต่มันมีวัตถุประสงค์เพื่อการแก้ไขปัญหาที่อธิบายไว้ในบทความนี้เท่านั้น เพียง ใช้กับระบบที่พบปัญหานี้ โปรแกรมแก้ไขด่วนนี้อาจได้รับการทดสอบเพิ่มเติม ดังนั้น ถ้าคุณไม่ได้รุนแรงรับปัญหานี้ เราขอแนะนำให้ คุณรอ service pack ถัดไปซึ่งประกอบด้วยโปรแกรมแก้ไขด่วนนี้

เมื่อต้องการแก้ไขปัญหานี้ทันที ติดต่อฝ่ายบริการสนับสนุนผลิตภัณฑ์ของ Microsoft เพื่อขอรับโปรแกรมแก้ไขด่วน สำหรับรายการทั้งหมดของหมายเลขโทรศัพท์บริการการสนับสนุนผลิตภัณฑ์ของ Microsoft และข้อมูลเกี่ยวกับค่าใช้จ่าย แวะไปที่เว็บไซต์ต่อไปนี้ของ Microsoft:
http://support.microsoft.com/contactus/?ws=support
หมายเหตุในกรณีพิเศษ ค่าธรรมเนียมที่ผู้เชี่ยวชาญสำหรับการโทรศัพท์ฝ่ายสนับสนุนสามารถยกเลิกหากเจ้าหน้าที่สนับสนุน Microsoft กำหนดว่า การปรับปรุงเฉพาะจะแก้ปัญหาของคุณ ต้นทุนในการสนับสนุนปกติจะใช้กับคำถามเพิ่มเติมและปัญหาที่ไม่สามารถจัดหาเฉพาะเจาะจงในการปรับปรุงเวอร์ชันภาษาอังกฤษของ hotfix นี้มีไฟล์แอททริบิวต์ (หรือรุ่นที่ใหม่กว่า) ซึ่งแสดงอยู่ในตารางต่อไปนี้ วันและเวลาของแฟ้มเหล่านี้แสดงในรูปแบบเวลามาตรฐาน (UTC) เมื่อคุณดูข้อมูลแฟ้มข้อมูล จะถูกแปลงเป็นเวลาท้องถิ่น เมื่อต้องการค้นหาความแตกต่างระหว่างเวลา UTC และเวลาท้องถิ่น ใช้โซนเวลาแท็บในเครื่องมือ'วันและเวลา'ใน'แผงควบคุม'
   Date         Time   Version            Size    File name
   --------------------------------------------------------------
   02-Mar-2004  18:39  1.1.4322.1007   1,294,336  System.data.dll                                             

การหลีกเลี่ยงปัญหา

สร้าง หรือทำลายวัตถุที่เกี่ยวข้องกับชุดข้อมูล (เช่นDataViewวัตถุ) ภายในตัวจัดการเหตุการณ์สำหรับการชุดข้อมูลวัตถุ

สถานะ

Microsoft ยืนยันว่า ปัญหานี้เป็นปัญหาที่เกิดขึ้นกับผลิตภัณฑ์ของ Microsoft ซึ่งแสดงไว้ในส่วน"ใช้งาน" ของบทความนี้
สแต็คการเรียกสำหรับข้อยกเว้นนี้ขึ้นอยู่กับฟังก์ชันการทำงานของโปรแกรมประยุกต์ของคุณและสาเหตุแท้จริงของข้อผิดพลาด ต่อไปนี้เป็นตัวอย่างที่สองที่เกิดขึ้นเมื่อลูกDataViewมีสร้างวัตถุในListChangedตัวจัดการเหตุการณ์สำหรับตัวควบคุม:

สแต็คการเรียกตัวอย่าง 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)

สแต็คการเรียกตัวอย่าง 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)

หมายเหตุสิ่งเหล่านี้เป็นตัวอย่างเท่านั้น และจะไม่เรียกกองเท่านั้นที่อาจเกิดขึ้นกับข้อผิดพลาดนี้

ข้อมูลอ้างอิง

สำหรับข้อมูลเพิ่มเติม ให้คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
824684คำอธิบายของคำศัพท์เฉพาะทางมาตรฐานที่ใช้เพื่ออธิบายปรับปรุงซอฟต์แวร์ของ Microsoft
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับข้อยกเว้นที่คล้ายกัน ที่เกิดขึ้นกับรุ่นก่อนหน้าของ ADOสุทธิ คลิกหมายเลขบทความต่อไปนี้เพื่อดูบทความในฐานความรู้ของ Microsoft:
332215การแก้ไข: " System.ArgumentOutOfRangeException: ดัชนีที่มีอยู่ในช่วงที่" ข้อผิดพลาดที่เกิดขึ้นกับ SqlClient.SqlConnection.Open()
หมายเหตุการแก้ไขสำหรับบทความใน Microsoft Knowledge base 332215 รวมอยู่ในเครื่องNET Framework รุ่น 1.1

คุณสมบัติ

หมายเลขบทความ (Article ID): 836874 - รีวิวครั้งสุดท้าย: 31 มกราคม 2554 - Revision: 3.0
ใช้กับ
  • Microsoft ADO.NET 1.1
Keywords: 
kbhotfixserver kbqfe kbmt KB836874 KbMtth
แปลโดยคอมพิวเตอร์
ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ Microsoft แทนที่จะเป็นนักแปลที่เป็นบุคคล Microsoft มีบทความที่แปลโดยนักแปลและบทความที่แปลด้วยคอมพิวเตอร์ เพื่อให้คุณสามารถเข้าถึงบทความทั้งหมดในฐานความรู้ของเรา ในภาษาของคุณเอง อย่างไรก็ตาม บทความที่แปลด้วยคอมพิวเตอร์นั้นอาจมีข้อบกพร่อง โดยอาจมีข้อผิดพลาดในคำศัพท์ รูปแบบการใช้ภาษาและไวยากรณ์ เช่นเดียวกับกรณีที่ชาวต่างชาติพูดผิดเมื่อพูดภาษาของคุณ Microsoft ไม่มีส่วนรับผิดชอบต่อความคลาดเคลื่อน ความผิดพลาดหรือความเสียหายที่เกิดจากการแปลเนื้อหาผิดพลาด หรือการใช้บทแปลของลูกค้า และ Microsoft มีการปรับปรุงซอฟต์แวร์การแปลด้วยคอมพิวเตอร์อยู่เป็นประจำ
ต่อไปนี้เป็นฉบับภาษาอังกฤษของบทความนี้:836874
การปฏิเสธความรับผิดชอบในเนื้อหาของ KB ที่จะไม่มีการปรับปรุงอีกต่อไป
บทความนี้กล่าวถึงผลิตภัณฑ์ที่ Microsoft ไม่มีการสนับสนุนอีกต่อไป เนื้อหาของบทความจึงมีการนำเสนอ "ตามลักษณะที่เป็น" และจะไม่มีการปรับปรุงข้อมูลอีก

ให้ข้อเสนอแนะ

 

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