Передача параметра действия контроллера в Excel - PullRequest
0 голосов
/ 08 июля 2011

Как передать параметр из действия контроллера в Excel? Я открываю файл Excel с помощью Response.Redirect в действии контроллера, но хочу передать параметр "id" в ячейку "A1" из "Sheet1"

Вот мой контроллер Действие:

    public ActionResult LaunchStudentBook(string id)
    {
        var stdno = student.StudentTable.Where(a => a.StudentNumber == id);

        Response.Redirect("~/StudentBook/StudentBook.xlsm");

        return View(stdno );

    }

1 Ответ

1 голос
/ 08 июля 2011

Лучшим решением для решения этой проблемы является изменение электронной таблицы Excel на сервере и отправка этого измененного документа клиенту.Это будет включать в себя несколько независимых шагов:

  1. Получить библиотеку EPPlus , высоко ценится (и с открытым исходным кодом) API для чтения и записи файлов Excel.

  2. Используйте эту библиотеку для чтения из StudentBook.xlsm.Это позволит проанализировать файл в объектной модели, которой вы можете затем управлять с помощью EPPlus.т.е. так вы «вставите параметр id в ячейку A1».

  3. Используйте EPPlus для записи нового документа в MemoryStream

  4. Создайте действие в вашем контроллере, которое отправит этот поток обратно клиенту через FileStreamResult.

Вы должны сделать все это удар и затем спроситьновые SO вопросы, когда вы начинаете их реализовывать.Однако, если вы ответите здесь, я постараюсь помочь, если смогу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...