c# - 在MVC中上传文件后读取Excel内容并填写一些文本框
问题描述
我正在上传一个 excel 文件并想读取文件内容,并在上传后使用 jquery ajax 填充一些带有 excel 内容的文本框。文件上传正确,但是当我想读取 excel 内容时遇到问题。有谁能够帮我?
public JsonResult ImportExcelToTextBoxes()
{
try
{
var ExcelFile = Request.Files[0];
if (ExcelFile != null && ExcelFile.ContentLength > 0)
{
//// .xlsx
//IExcelDataReader reader = ExcelReaderFactory.CreateOpenXmlReader(ExcelFile.InputStream);
// .xls
IExcelDataReader reader = ExcelReaderFactory.CreateBinaryReader(ExcelFile.InputStream);
var result = reader.AsDataSet(new ExcelDataSetConfiguration() {
ConfigureDataTable = (_) => new ExcelDataTableConfiguration() {
UseHeaderRow = true
}
});
}
//foreach (var item in ExcelFile)
{
IList lst = new List<ET.Reservation.Classes.PassengerSaleSeat>();
ET.Reservation.Classes.PassengerSaleSeat pass = new ET.Reservation.Classes.PassengerSaleSeat();
pass.FirstName = "testtt";//this section is for test
pass.LastName = "tttttt";//this section is for test
pass.Gender = ET.Public.Enumerations.GENDER.Female;//this section is for test
lst.Add(pass);//this section is for test
}
return Json(lst);
}
catch (Exception ex)
{
Console.WriteLine(ex);
throw ex;
}
return null;
}
和js部分:
$('#btnUploadExcel').click(function () {
var formData = new FormData();
formData.append('file', fileInput.files[0]);
$.ajax({
type: "POST",
url: "/PassengerSaleSeat/ImportExcelToDatabase",
data: formData,
processData: false,
contentType: false,
success: function (data) {
for (var i = 0; i < data.length; i++) {
alert(data[i].FirstName);
}
},
error: function(err) {
alert('error');
}
});
});
输入是:
<input id="fileInput" type="file">
<button type="button" id="btnUploadExcel" class="btn btn-labeled btn btn-success">Send</button>
JSON 返回: 图片
解决方案
推荐阅读
- javascript - 如何使 JSON 响应数据全局化:)
- python - 在mac环境下操作PyInstaller可执行文件时,无法引用Excel工作表
- c# - 碰撞不适用于 Unity 2D 中的标签
- c - 具有字符串顺序的二叉搜索树
- python - 如何更改 Pillow python 中的线条方向?
- sql - 查询按几列分组
- module - 将 `require(file)` 中的值加载到局部变量中
- reactjs - 使用后退按钮时 Nextjs 应用程序中的 React-spring 错误
- javascript - 如何在javascript中使用嵌套对象序列化对象?
- r - 如何在R中rollapply()最大似然估计