ฉันใช้ OleDb เพื่ออ่านจากสมุดงาน excel ที่มีแผ่นงานมากมาย
ฉันต้องการอ่านชื่อแผ่นงาน แต่ต้องการตามลำดับที่กำหนดไว้ในสเปรดชีต ดังนั้นหากฉันมีไฟล์ที่มีลักษณะเช่นนี้
|_____|_____|____|____|____|____|____|____|____|
|_____|_____|____|____|____|____|____|____|____|
|_____|_____|____|____|____|____|____|____|____|
\__GERMANY__/\__UK__/\__IRELAND__/
จากนั้นฉันต้องได้รับพจนานุกรม
1="GERMANY",
2="UK",
3="IRELAND"
ฉันได้ลองใช้OleDbConnection.GetOleDbSchemaTable()
แล้วและนั่นทำให้ฉันมีรายชื่อ แต่เรียงตามตัวอักษร การเรียงลำดับอัลฟาหมายความว่าฉันไม่รู้ว่าชื่อแผ่นงานใดตรงกับชื่อใด ดังนั้นฉันจึงได้รับ;
GERMANY, IRELAND, UK
ซึ่งมีการเปลี่ยนแปลงคำสั่งของและUK
IRELAND
เหตุผลที่ฉันต้องจัดเรียงก็คือฉันต้องให้ผู้ใช้เลือกช่วงข้อมูลตามชื่อหรือดัชนี พวกเขาสามารถขอ 'ข้อมูลทั้งหมดจาก GERMANY ถึง IRELAND' หรือ 'ข้อมูลจากแผ่นงาน 1 ถึงแผ่นงาน 3'
ความคิดใด ๆ ที่จะได้รับการชื่นชมอย่างมาก.
ถ้าฉันสามารถใช้คลาสการทำงานร่วมกันของสำนักงานได้นี่จะตรงไปตรงมา น่าเสียดายที่ฉันทำไม่ได้เพราะคลาสการทำงานร่วมกันไม่ทำงานได้อย่างน่าเชื่อถือในสภาพแวดล้อมที่ไม่โต้ตอบเช่นบริการ windows และไซต์ ASP.NET ดังนั้นฉันจึงจำเป็นต้องใช้ OLEDB