Что у меня уже есть: у меня есть код контроллера, который собирает некоторые значения / расчеты и отправляет их в представление. Сейчас я показываю все результаты на странице просмотра.
Что я пытаюсь сделать: экспортировать результаты, отображаемые в представлении, в текстовый файл или файл Excel при нажатии кнопки «Экспорт»
Использование: MVC
Пример кода у меня
Контроллер:
public ActionResult Calculations()
{
dynamic CalcModel = new ExpandoObject();
int var1 = //Value calculated here
int var2 = //Calculation
CalcModel.Var1= var1;
CalcModel.Var2= var2;
return View(CalcModel);
}
Вид:
<table>
<tr><td>First Value:</td><td><%=Model.Var1%></td></tr>
<tr><td>Second Value:</td><td><%=Model.Var2%></td></tr>
</table>
Я хочу иметь возможность записать эти значения из контроллера в текстовый файл или файл Excel и позволить пользователю сохранить файл. Спасибо за помощь.
EDIT:
Я нашел решение (вроде), но мне нужна дополнительная помощь:
Latest Controller code:
public ActionResult Calculations()
{
dynamic CalcModel = new ExpandoObject();
int var1 = //Value calculated here
int var2 = //Calculation
CalcModel.Var1= var1;
CalcModel.Var2= var2;
//Export code.
string csv = "Value1 = " + var1 + "|| Value2 = " + var2;
return File(new System.Text.UTF8Encoding().GetBytes(csv), "text/csv",
"Report.txt");
//Export code end.
return View(CalcModel);
}
Создает текстовый файл со значениями, напечатанными в нем. Но как мне получить каждое значение, напечатанное в отдельной строке ... прямо сейчас все значения напечатаны в одной плоской строке.