Member 12663418 Ответов: 1

Я хочу, чтобы экспортировать набор данных на листе Excel с помощью Excel файлов из NuGet в C# я не хочу использовать Microsoft.офис.- взаимодействия.в Excel, я хочу использовать только с помощью Excel; пожалуйста, помогите..


Пожалуйста, кто-нибудь помогите мне я хочу экспортировать набор данных в excel sheet с помощью Excel dll из nuget в c# я не хочу использовать Microsoft.Офис.Взаимодействие.Excel; я хочу использовать только
использование Excel; пожалуйста, помогите.

Что я уже пробовал:

это мой набор данных. этот набор данных я хочу загрузить в excel.

использование Excel;
строковое свойство sqlcommand;
Набор данных dsLoadAllTabsDetails;
var connectionString = система.Конфигурация.Конфигурационный менеджер.ConnectionStrings ["LocalConnectionString"].Метод toString();

List< viewdatamodelapplication> objAPPLI = новый список & lt;viewdatamodelapplication>();
using (var conn = new SqlConnection(connectionString))
{
SqlCommand = "EXEC USP_Get_AllTabsDetails '" + partId+"'";
Sqldataadapter adapter = новый SqlDataAdapter(SqlCommand, conn);
dsLoadAllTabsDetails = новый набор данных();
адаптер.Fill(dsLoadAllTabsDetails);
адаптер.Располагать();

// DTToExcel(dsLoadAllTabsDetails);
}
вернуть "";

Richard MacCutchan

Нет такого пространства имен ,как "просто Excel", это Microsoft.Офис.Взаимодействие.Превосходить.

F-ES Sitecore

Ваш .net-код не может напрямую взаимодействовать с Excel, так как Excel автоматизирован через COM, который является предшественником .net. "Interop" - это оболочка вокруг COM-объектов, которая позволяет вашему .net-коду использовать их.

Member 12663418

Когда вы будете использовать nuget и искать ExcelDataReader, excel добавит refrences в качестве dll.

Richard MacCutchan

Извините, я понятия не имею, что это должно означать.

Member 12663418

Я хочу преобразовать набор данных в excel с помощью пакета nuget, а не microsoft(Microsoft.Офис.Взаимодействие.Превосходить)

Member 12663418

Я хочу использовать пакет nuget для преобразования набора данных в excel я не хочу использовать пакет microsoft (Microsoft.Офис.Взаимодействие.Превосходить)

Richard MacCutchan

Тогда идите вперед и используйте его. Если у вас возникли технические проблемы, пожалуйста, используйте Улучшить вопрос ссылка выше и добавьте всю соответствующую информацию к вашему вопросу.

1 Ответов

Рейтинг:
2

David_Wimbley

Класс ExcelDataReader, на который вы ссылаетесь,не предназначен для написания...использование этого класса находится в названии...его для чтения.

Вам нужно заглянуть в open xml и использовать его из C#. Не зная точно, что вы хотите сделать, это лучшее место для начала. Следует отметить, что это работает только с excel 2007 и более поздними версиями (или, может быть, с 2010 годом...какую бы версию они ни переключили на стандарт xml). Если это все еще не то, что вы хотите, то я боюсь, что то, что вы пытаетесь сделать, не сработает. Ваш единственный другой вариант, кроме open xml, - это использовать Microsoft.Офис.Взаимодействие.Преуспеть или заплатить кучу денег за какую-нибудь библиотеку, которую кто-то написал.

При решении этой проблемы вам нужно взять свой конечный результат и разбить его на более мелкие кусочки. Это означает, что если вы хотите записать весь набор данных / таблицу в электронную таблицу, так как это новая библиотека. Начните с простого выяснения того, как записать строку в электронную таблицу. Затем оттуда возьмите список данных, пролистайте его и запишите в электронную таблицу. Затем возьмите список сложного типа и запишите его в несколько ячеек.

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

Создание книг Excel 2010 с помощью пакета Open XML SDK 2.0[^]

Как вставить текст в ячейку документа электронной таблицы (Open XML SDK)[^]

Чтение и запись Microsoft Excel с помощью Open XML SDK[^]

ClosedXML - простой способ открыть XML-Home[^]

Как создать файл Excel в .NET с помощью OpenXML-Part 1: Basics &#8211; Threading.DispatcherTimer[^]