Schnellste Weg, um eine Schnittstelle zwischen den Leben (nicht gespeicherte) Excel-Daten und C# - Objekten

Ich will wissen, was der Schnellste Weg ist, das Lesen und schreiben von Daten zu und von einer geöffneten Excel-Arbeitsmappe zu c# - Objekte. Der hintergrund ist, dass ich bei der Entwicklung einer c# - Anwendung, die verwendet wird, aus Excel und verwendet Daten in excel.

Die business-Logik befinden sich in der c# - Anwendung, aber die Daten befinden sich in einer Excel-Arbeitsmappe. Der Benutzer wird mithilfe von Excel und klicken Sie auf eine Schaltfläche (oder etwas ähnliches) auf die excel-Arbeitsmappe zu initiieren, die c# - Anwendung. Der c# - Anwendung liest dann die Daten aus der excel-Arbeitsmappe, die Daten zu verarbeiten und dann schreiben die Daten zurück in die excel-Arbeitsmappe.
Möglicherweise gibt es zahlreiche Blöcke von Daten, die erforderlich sind, um abgelesen und geschrieben, die excel-Arbeitsmappe, aber Sie werden in der Regel von einer relativ kleinen Größe, sagen wir 10 Zeilen und 20 Spalten. Gelegentlich eine große Liste von Daten können verarbeitet werden müssen, von der Reihenfolge von 50.000 Zeilen und 40 Spalten.

Weiß ich, dass dies relativ einfach zu sagen, die mithilfe von VSTO, aber ich will wissen was die Schnellste (aber immer noch robuste und elegante) Lösung ist, und bekommen eine Vorstellung von der Geschwindigkeit. Ich habe nichts dagegen, wenn die Lösung empfiehlt die Verwendung von Produkten von Drittanbietern verwendet oder C++.

Die naheliegende Lösung ist die Verwendung von VSTO-oder interop-aber ich weiß nicht, was die Leistung wie gegen VBA, die ich bin derzeit mit Lesen in den Daten, oder wenn es irgendwelche anderen Lösungen.

Dieser wurde geschrieben am Experten austauschen, die sagen, dass VSTO wurde dramatisch langsamer als mit VBA, aber das war vor ein paar Jahren und ich weiß nicht, ob die Leistung verbessert hat.

http://www.experts-exchange.com/Microsoft/Development/VSTO/Q_23635459.html

Dank.

InformationsquelleAutor der Frage jw_pr | 2010-10-01

Schreibe einen Kommentar