使用特定模型提交Html表单

时间:2014-02-13 01:44:16

标签: excel razor knockout.js export typescript

我在我的应用程序中使用MVC,Razor,Knockout,typescript。需要使用在客户端设置的模型/数据集准备excel文件。我使用下面的代码,但我理解的问题是数据集被视为字符串,并不完全像它应该采取的模型。这是代码

这是可观察的(数据集)

 vmExportData = ko.observableArray<ExcelModel>([]);

将数据推送到数据集

vmExportData.push(new ExcelModel (
e.sender.data()[i].Id,
e.sender.data()[i].Name, 
e.sender.data()[i].Address1,
));

Html代码,准备excel文件(在控制器上)

@using (Html.BeginForm("ExportToExcel", "MyController", FormMethod.Post, new { enctype = "multipart/form-data" }))
{
<div data-bind="css:{hidden: true}">
<input type="text" data-bind="value: vmExportData" />
</div>
<input class='excelIcon' type="submit" data-ux-access="true" value="">
}

控制器方法:

public ActionResult ExportToExcel(ExportModel exportModel)
        {

问题是,exportModel参数值为null!还有其他办法让它发挥作用吗?有没有办法在客户端制作excel并渲染?

1 个答案:

答案 0 :(得分:0)

尝试在代码上设置name="exportModel"

另外,请确保在控制器操作之上设置[HttpPost],因为您的表单方法已发布。

ExportModel类是什么样的?