JDa*_*848 6 c# json asp.net-core-mvc iformfile
长话短说,我有一个观点,我在哪里使用
@using (Html.BeginForm("AddFormToOrder", "Form", FormMethod.Post, new { @id = "OrderForm", enctype = "multipart/form-data" }))
Run Code Online (Sandbox Code Playgroud)
这将有一个文件上传,一旦我选择文件并单击添加到订单按钮,AddFormToorder 将使用以下信息触发
楷模
public class Orders
{
public List<Forms> FormList { get; set; }
public Orders()
{
FormList = new List<Forms>();
}
}
public class Forms
{
public ICollection<IFormFile> Files { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
在我的控制器中我正在这样做
public IActionResult AddFormToOrder(Forms form)
{
var Orders = JsonConvert.DeserializeObject<Orders>(HttpContext.Session.GetString("Shop_Orders"));
Orders.Forms.Add(form);
var serializedModel = JsonConvert.SerializeObject(Orders);
HttpContext.Session.SetString("Shop_Orders", serializedModel);
return RedirectToAction("Index", "Form");
}
Run Code Online (Sandbox Code Playgroud)
这个问题是,一旦返回并进入索引,我再次反序列化但随后出现以下错误
JsonSerializationException:无法创建 Microsoft.AspNetCore.Http.IFormFile 类型的实例。类型是接口或抽象类,不能被实例化。
现在如果我添加一个没有文件的订单,一切正常,这个错误永远不会抛出。我相信问题是使用 IFormFile 序列化模型,但我不知道如何解决它。是否可以序列化 IformFile 类型?
| 归档时间: |
|
| 查看次数: |
2034 次 |
| 最近记录: |