2014-02-13 4 views
0

내 응용 프로그램에 MVC, 면도칼, 녹아웃, 타이피 스크립트를 사용하고 있습니다. 클라이언트 측에서 설정된 모델/데이터 세트로 Excel 파일을 준비해야합니다. 다음 코드를 사용하고 있지만 이해할 수있는 문제는 데이터 집합이 문자열로 받아 들여지고 모델과 정확히 같지 않다는 것입니다. 여기서 (제어기에서) 엑셀 파일특정 모델의 HTML 양식 제출

@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=""> 
} 
을 제조하는 코드

이 관측 (세트) 데이터 집합

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

HTML 코드에

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

푸시 데이터이며

컨트롤러 방법 :

public ActionResult ExportToExcel(ExportModel exportModel) 
     { 

문제는 exportModel 매개 변수 값이 null로 표시된다는 것입니다. 다른 방법으로 작동 시키려면? 클라이언트 쪽에서 Excel을 만들고 렌더링하는 방법이 있습니까?

답변

0

태그에 name="exportModel"을 설정하십시오.

양식 메서드가 게시물이기 때문에 컨트롤러 동작 위에 [HttpPost]이 있어야합니다.

ExportModel 클래스는 어떤 모양입니까?

+0

행운을! ExportModel이 ExcelModel (클라이언트 측)처럼 보입니다 – user2837167

+0

"id"를 설정하려고 시도했지만 값을 전달합니다. – user2837167