从 MVC 控制器导出到文本或 Excel
我已经拥有的:我有控制器代码搅动一些值/计算并将它们发送到视图。现在,我正在视图页面上显示所有结果。
我想做的:按下“导出”按钮将视图上显示的结果导出到文本或 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 文件,并让用户保存文件。感谢您的帮助。
编辑:
我找到了一个解决方案(某种程度),但需要进一步的帮助:
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);
}
这会生成一个文本文件,其中打印有值。但是如何将每个值打印在单独的行中..现在所有值都打印在一条平线上。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
Envrionment.NewLine 应该这样做:
编辑:
你也可以尝试\n。
Envrionment.NewLine should do it:
Edit:
You can try \n as well.
这可能会有所帮助
http://stephenwalther.com/blog/archive/2008/06/16/asp-net-mvc-tip-2-create-a-custom-action-result-that-returns-microsoft- excel-documents.aspx
或者这样:
http://www.codeproject.com/KB/aspnet/Streaming_Excel_ASP_NET.aspx
This might help
http://stephenwalther.com/blog/archive/2008/06/16/asp-net-mvc-tip-2-create-a-custom-action-result-that-returns-microsoft-excel-documents.aspx
Or this:
http://www.codeproject.com/KB/aspnet/Streaming_Excel_ASP_NET.aspx