Задать вопрос
@ZyfMoXa
учусь программировать на практике

Как сформировать Excel на основании Json?

Добрый день!
Я чайник, но я учусь. Возник вопроса: как сформировать Excel файл на основании Json в c# MVC
есть View где я передаю строку в контроллер
$.ajax({
    type: "POST",
    url: "/Naryad/AjaxTest4",
    data: JSON.stringify(testDataN),
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: successFunc,
    error: errorFunc
});
               function successFunc(data, status) {
                alert(data);
            }
            function errorFunc(errorData) {
                alert('Ошибка' + errorData.responseText);
            }  })
    })

сонтроллер:
[HttpPost]
        public ActionResult AjaxTest4(Naryad[] testDataN)
        {

            JavaScriptSerializer serializer = new JavaScriptSerializer();
         

             string tmp = string.Empty;
             for (int i = 0; i < testDataN.Length; i++)
             {
                 string oborud = testDataN[i].Oborud;
                 string on = String.Format("{0}", oborud);
                 tmp += string.Format("Сервер2 получил данные! Значения:  {0}", on + ", " + testDataN[i].Date + ", " + testDataN[i].Staff + ", " + testDataN[i].TypeTo + ", " + testDataN[i].Work + ", " + testDataN[i].Tp + "," + testDataN[i].Tf);

             }
            return View();
            
            }

Прочитала много информации и запуталась в ней
Можно в ActionResult AjaxTest4 формировать файл или нужно как-то в другом Action-е это реализовывать
Помогите, пожалуйста разобраться
  • Вопрос задан
  • 3326 просмотров
Подписаться 2 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 2
lexxpavlov
@lexxpavlov
Программист, преподаватель
Проще всего массив нарядов преобразовать в csv. А потом из csv можно преобразовать в xls с помощью, например, библиотеки EPPlus (простой пример использования).

Само преобразование лучше произвести в отдельном методе, а не в AjaxTest4(). Лучше даже в отдельном классе, имхо.
Ответ написан
FitTech
@FitTech
Лично я бы сделал так:
С помощью DataTables, на основе данных в json построил бы на странице таблицу() с данными которые нужны в документе, а дальше просто экспорт в excel.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы