Я хочу знать, что самый быстрый способ - читать и записывать данные в открытую книгу Excel и открывать ее с помощью объектов С#. Фон заключается в том, что я хочу разработать приложение С#, которое используется в Excel, и использует данные, хранящиеся в excel.
Бизнес-логика будет находиться в приложении С#, но данные будут находиться в книге Excel. Пользователь будет использовать Excel и щелкнет кнопкой (или сделает что-то подобное) в книге excel, чтобы инициировать приложение С#. Приложение С# затем считывает данные из рабочей книги Excel, обрабатывает данные, а затем записывает данные в книгу Excel.
Могут быть многочисленные блоки данных, которые должны быть считаны и записаны в книгу Excel, но они обычно будут иметь относительно небольшой размер, например 10 строк и 20 столбцов. Иногда может потребоваться обработка большого списка данных порядка 50 000 строк и 40 столбцов.
Я знаю, что это относительно легко сделать, используя VSTO, но я хочу знать, что самое быстрое (но все же надежное и элегантное) решение и получить представление о скорости. Я не против, если решение рекомендует использовать сторонние продукты или использует С++.
Очевидным решением является использование VSTO или interop, но я не знаю, что такое производительность по сравнению с VBA, которую я сейчас использую для чтения в данных, или если есть какие-либо другие решения.
Это было опубликовано на обмене экспертов, в котором говорилось, что VSTO был значительно медленнее, чем VBA, но это было пару лет назад, и я не знаю, улучшилась ли производительность.
http://www.experts-exchange.com/Microsoft/Development/VSTO/Q_23635459.html
Спасибо.