0

.xls ドキュメントをデータセットに読み込んでいますが、列全体が間違ったデータ型として渡されるという問題があります。文字列ベースである必要がある場合、列は数値ベースであると見なされます。数字だけの行がたくさんありますが、1または2の文字はほとんどありません。列全体を数字ではなく文字として扱う必要があります。

現在起こっていることは、これらの 2 つの行に遭遇すると、それらを null に戻し、他のすべてを渡すことです。Excelが最初の8列で行タイプを決定することをどこかで読んだことを覚えています。これが問題である場合、この機能を無効にして、この列が文字列であることを伝える方法を誰かが知っています。

私は試しました: 列全体を強調表示 > 右クリック > フォーマット > 選択したテキスト それでも機能しません。

また試しました:"Driver={Microsoft Excel Driver (*.xls)};DriverId=790;Dbq=" + FileUpload1.PostedFile.FileName.ToString() + ";Extended Poperties=Excel 8.0;HDR=Yes;IMEX=1"

と:"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + FileUpload1.PostedFile.FileName.ToString() + ";Extended Poperties=Excel 8.0;HDR=Yes;IMEX=1"

And:"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + FileUpload1.PostedFile.FileName.ToString() + ";Extended Properties=\"Excel 8.0;HDR=YES\";"; ここで得られるエラーは: ERROR [IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified

4

2 に答える 2