Я пытаюсь загрузить CSV-файл в базу данных SQL, но действие контроллера, похоже, вообще не захватывает файл. Проверьте код, я должен отсутствовать часть:Действие контроллера не захватывает файл при просмотре при попытке загрузить
Вид:
@using (Html.BeginForm("UploadValidationTable", "Home", FormMethod.Post))
{
<table style="margin-top: 150px;">
<tr>
<td>
<label for="csvFile">Filename:</label>
</td>
<td>
<input type="file" name="csvFile" id="csvFile"/>
</td>
<td><input type="submit" value="Upload"/></td>
</tr>
</table>
}
Контроллер:
[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 просто появляясь как нуль, понятия не не то, что может быть происходит, поскольку он назван в представлении, и у меня есть метод post, окружающий его. Он делает это до var filePath = uploadFile(csvFile.InputStream);
, а затем ломается, так как метод пытается передать нулевое значение. Благодаря!
Ну как я подтверждал синтаксис был дан ответ ... 3 раза , Иди меня! –