Ich habe ein einfaches Verfahren zum Konvertieren xlsx nach CSV.Konvertieren von Excel zu CSV über asp.net (C#) unter IIS
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);
}
Alles funktioniert gut auf meinem lokalen Computer und auch lokalen IIS. Aber nach dem Hochladen auf den Webserver scheint es nicht zu funktionieren. Alles, was es tut, ist etwa 3 Minuten und dann eine Auszeit.
ich auch erlaubt Berechtigungen in der Komponente
Services -> Computers -> My Computer -> DCOM Config -> Microsoft Excel Application -> IIS_IUSRS
und auch erstellt Desktop-Ordner
C:\Windows\SysWOW64\config\systemprofile\
und auch in 32-Bit-:-)
So jetzt, ich habe keine Ahnung, warum es nicht funktioniert. Haben Sie ähnliche Erfahrungen damit oder können Sie mir einen Hinweis geben, was ich tun soll, bitte.
Dieser Code Excel, indem tatsächlich auf einem Windows ‚privaten Desktop‘ funktioniert, die Sie nicht sehen können. Auf Web-Servern ist Excel oft nicht installiert. Selbst wenn dies der Fall ist, ist das Ausführen des vollständigen Excel-Programms für eine Dateikonvertierung _awful_ für die Leistung. –