2016-09-03 3 views
0

Этот вопрос может быть более субъективным, но я надеюсь, что кто-то с большим опытом поможет мне в правильном направлении.ASP.NET и OpenXML - Создать форматированный/стилизованный файл xlsx - Лучшее решение?

Я новичок в веб-разработке, но кодировал C# в течение нескольких лет. Моя работа требует, чтобы я конвертировал существующее приложение, которое у нас есть в SharePoint 2013, и часть приложения генерирует отчет Excel с настраиваемыми форматами и стилями. В исходном приложении мы использовали Interop, но, видимо, поскольку он 32bit, а наш сервер 64 бит, Interop не будет работать. Я думал о том, чтобы просто делать csv, но наш клиент непреклонно относится к стилю, поэтому я нашел OpenXML.

У меня нет опыта работы с OpenXML, но я видел, как инструмент может конвертировать файлы в код. Я загрузил наш шаблон в инструмент, и он создал около 2000 строк кода, которые кажутся очень чрезмерными. Использование Interop - это часть длины и кажется намного легче читать. У меня возникает соблазн просто скопировать весь код и вставить его в регион (который, как я знаю, большинство разработчиков ненавидят, и я согласен с тем, что я выгляжу плохо), и назовите в верхней части сообщения, что если шаблон когда-либо изменится, чтобы просто переделать этот регион с помощью новый.

Это мой лучший вариант или есть лучшая альтернатива? К сожалению, наша сеть разработчиков сети довольно закрыта (это боль, чтобы получить одобрение сторонних разработчиков, но я не могу использовать сторонние библиотеки, которые я могу добавить. Если есть вариант без этого, это было бы предпочтительнее.

ответ

0

Если у вас есть один или несколько шаблонов, просто используйте OpenXML для создания новой книги из шаблона для каждого запроса. А затем используйте код для ввода значений в именованные диапазоны, наборы данных в строки и т. Д.

BTW-ClosedXML упрощает простые и средние вещи.

+0

Это всего 2 шаблона, и это был мой план добавления информации. Я больше спрашиваю, не является ли плохая практика просто копировать код, создаваемый инструментом, и вставлять их в регион, так как они так долго. Кроме того, я видел ClosedXML, и похоже, что это упростит ситуацию, но я сомневаюсь, что моя работа, к сожалению, одобрит его. – JRich

+0

Вы можете поместить сгенерированный код в метод и поместить метод в отдельный файл частичного класса. Настройте любые инструменты проверки кода, чтобы пропустить файл в виде сгенерированного кода. –