C# 尝试上载时控制器操作未从视图中抓取文件
我试图将一个.csv文件上载到SQL数据库中,但控制器操作似乎根本没有抓取该文件。检查代码,我一定少了一块: 视图: 控制器:C# 尝试上载时控制器操作未从视图中抓取文件,c#,asp.net-mvc,linq,entity-framework,file-upload,C#,Asp.net Mvc,Linq,Entity Framework,File Upload,我试图将一个.csv文件上载到SQL数据库中,但控制器操作似乎根本没有抓取该文件。检查代码,我一定少了一块: 视图: 控制器: [HttpPost] public JsonResult UploadValidationTable(HttpPostedFileBase csvFile) { var inputFileDescription = new CsvFileDescription { SeparatorChar =
[HttpPost]
public JsonResult UploadValidationTable(HttpPostedFileBase csvFile)
{
var inputFileDescription = new CsvFileDescription
{
SeparatorChar = ',',
FirstLineHasColumnNames = true
};
var cc = new CsvContext();
var filePath = uploadFile(csvFile.InputStream);
var model = cc.Read<OutstandingCreditCsv>(filePath, inputFileDescription);
try
{
var entity = new OutstandingCreditCsv();
foreach (var item in model)
{
entity.PoNumber = item.PoNumber;
entity.CreditInvoiceDate = item.CreditInvoiceDate;
entity.CreditInvoiceNumber = item.CreditInvoiceNumber;
entity.CreditInvoiceAmount = item.CreditInvoiceAmount;
}
}
catch(LINQtoCSVException ex)
{
}
return Json(model, "text/json");
}
csvFile只是显示为null,不知道会发生什么,因为它在视图中被命名,并且我有post方法围绕它。直到var filePath=uploadFilecsvFile.InputStream;然后中断,因为该方法试图传递空值。谢谢 我认为您需要将enctype='multipart/form data'添加到
我认为您需要将enctype='multipart/form data'添加到
您需要在表单声明中添加以下内容:
@using (Html.BeginForm("UploadValidationTable", "Home", null,FormMethod.Post, new { enctype = "multipart/form-data" }))
您需要在表单声明中添加以下内容:
@using (Html.BeginForm("UploadValidationTable", "Home", null,FormMethod.Post, new { enctype = "multipart/form-data" }))
您需要更改您的表单声明。尝试将enctype=multipart/form数据添加到表单声明中
@使用Html.BeginFormUploadValidationTable、Home、FormMethod.Post、new{enctype=multipart/formdata}您需要更改表单声明。尝试将enctype=multipart/form数据添加到表单声明中
@使用Html.BeginFormUploadValidationTable,Home,FormMethod.Post,new{enctype=multipart/form data}我在尝试使用MVC将文件上载到db时遇到了这个问题。前一段时间,我使用的是脚手架视图,所以它也用表单传回了一个对象,所以可能有点不同 在HTML.BeginForm调用中,需要添加属性enctype=multipart/form data
@using (Html.BeginForm("UploadValidationTable", "Home", FormMethod.Post, new {enctype="multipart/form-data"}))
前一段时间,我在尝试使用MVC将文件上载到db时遇到了这个问题,我使用的是脚手架视图,所以它还通过表单传回了一个对象,所以可能有点不同 在HTML.BeginForm调用中,需要添加属性enctype=multipart/form data
@using (Html.BeginForm("UploadValidationTable", "Home", FormMethod.Post, new {enctype="multipart/form-data"}))
当我确认语法时,它被回答了。。。三次。跟我来!当我确认语法时,它被回答了。。。三次。跟我来!