Хобрук: Ваш путь к мастерству в программировании

Epplus loadfromCollection список int не работал

Я пытаюсь загрузить данные из списка int и списка строк для отображения диаграммы с помощью excel, используя библиотеку epplus с asp.net, он отлично работает для списка строк, однако, когда я пытаюсь загрузить из списка int появляется исключение :

System.IndexOutOfRangeException : 'Индекс находился за пределами массива.

var workSheet = ep.Workbook.Worksheets.Add("Activité");

                // specify cell values to be used for generating chart.
               // CountList : list of int
                workSheet.Cells[2, 1].LoadFromCollection(CountList); 
                // add chart of type Pie.
                var myChartt = workSheet.Drawings.AddChart("chart", eChartType.CylinderCol);

                // Define series for the chart
var seriess = myChartt.Series.Add("A2: A5", "B2: B5");
myChartt.Border.Fill.Color = System.Drawing.Color.Green;
myChartt.Title.Text = "My Chart";
myChartt.SetSize(400, 400);
25.01.2018


Ответы:


1

Проблема вызвана типом int, чтобы переопределить его, вы можете вместо этого передать список строк:

            var workSheet = ep.Workbook.Worksheets.Add("Activité");

            List<int> CountList= new List<int>();
            List<string> stringList= new List<string>();
            foreach (var num in CountList)
            {
                stringList.Add(num.ToString());
            }
            // specify cell values to be used for generating chart.
            // CountList : list of int
            workSheet.Cells[2, 1].LoadFromCollection(stringList);
            // add chart of type Pie.
            var myChartt = workSheet.Drawings.AddChart("chart", eChartType.CylinderCol);

            // Define series for the chart
            var seriess = myChartt.Series.Add("A2: A5", "B2: B5");
            myChartt.Border.Fill.Color = System.Drawing.Color.Green;
            myChartt.Title.Text = "My Chart";
            myChartt.SetSize(400, 400);

Похоже, что LoadFromCollection также терпит неудачу для списка символов и списка двойников, поэтому я предполагаю, что LoadFromCollection ожидает передачи коллекции ссылочных значений.

25.01.2018
Новые материалы

Создание кнопочного меню с использованием HTML, CSS и JavaScript
Вы будете создавать кнопочное меню, которое имеет состояние наведения, а также позволяет вам выбирать кнопку при нажатии на нее. Финальный проект можно увидеть в этом Codepen . Шаг 1..

Внедрите OAuth в свои веб-приложения для повышения безопасности
OAuth — это широко распространенный стандарт авторизации, который позволяет приложениям получать доступ к ресурсам от имени пользователя, не раскрывая его пароль. Это позволяет пользователям..

Классы в JavaScript
class является образцом java Script Object. Конструкция «class» позволяет определять классы на основе прототипов с чистым, красивым синтаксисом. // define class Human class Human {..

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

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

Обзор: Машинное обучение: классификация
Только что закончил третий курс курса 4 часть специализации по машинному обучению . Как и второй курс, он был посвящен низкоуровневой работе алгоритмов машинного обучения. Что касается..

Разработка расширений Qlik Sense с qExt
Использование современных инструментов веб-разработки для разработки крутых расширений Вы когда-нибудь хотели кнопку для установки переменной в приложении Qlik Sense? Когда-нибудь просили..