xlsxをcsvに変換する簡単な手順があります。IISからasp.net(C#)経由でExcelからCSVに変換する
public static void ConvertExcelToCsv(string source, string destination, int sheetNumber = 1)
{
if (File.Exists(destination)) File.Delete(destination);
Excel.Application xl = new Excel.Application();
xl.DisplayAlerts = false;
Excel.Workbook workbook = xl.Workbooks.Open(source);
// workbook.Close(true);
workbook.SaveAs(destination, Microsoft.Office.Interop.Excel.XlFileFormat.xlCSV);
object misValue = System.Reflection.Missing.Value;
if (workbook != null)
{
workbook.Close(false, Type.Missing, Type.Missing);
xl.Workbooks.Close();
Marshal.ReleaseComObject(workbook);
}
xl.Quit();
GC.Collect();
Marshal.FinalReleaseComObject(xl);
}
ローカルマシンとローカルIISですべて正常に動作します。しかし、Webサーバーにアップロードした後は動作しないようです。それがしていることはすべて約3分を処理してからタイムアウトすることです。
コンポーネント
Services -> Computers -> My Computer -> DCOM Config -> Microsoft Excel Application -> IIS_IUSRS
で私はまた、許可されたアクセス権とも作成デスクトップフォルダ
C:\Windows\SysWOW64\config\systemprofile\
:-) 32bit版では、私が持っていますいいえ、なぜそれは動作しません。あなたはこれと似た経験をしているのですか、何をすべきか、いくつかのヒントを教えてください。
が参照するパスに適切な権限を持っていることを確認してください。 WebサーバーにはExcelがインストールされていないことがよくあります。たとえそうであっても、ファイル変換のための完全なExcelプログラムを実行することは、パフォーマンスにとっては不便です。 –