我收到System.NullReferenceException:“物件參考未設定為物件的實體。” 反序列化我的 TempData 物件后,Index2.cshtml 檔案中出現錯誤。如何在不出現此錯誤的情況下顯示我的物件?(這是我第一次在這里問如果我犯了錯誤。)
var products = new List<Products>
{
new Products {Id=56, ProductName="x",Quantity=45},
new Products {Id=55, ProductName="y",Quantity=5},
new Products {Id=54, ProductName="z",Quantity=4},
new Products {Id=53, ProductName="t",Quantity=8},
new Products {Id=52, ProductName="k",Quantity=12}
};
string data = JsonSerializer.Serialize(products);
TempData["products"] = data;
return RedirectToAction("Index2");
public IActionResult Index2()
{
var data = TempData["products"].ToString();
List<Products> products = JsonSerializer.Deserialize<List<Products>>(data);
return View();
}
**Index2.cshtml**
<ul>
@foreach(var item in TempData["products"] as List<Products>)
{
<li>@item.ProductName</li>
}
</ul>
uj5u.com熱心網友回復:
更改您的代碼:
List<Products> products = JsonSerializer.Deserialize<List<Products>>(data);
到:
TempData["products"] = JsonSerializer.Deserialize<List<Products>>(data);
或者您可以使用return View(products)來使用資料:
public IActionResult Index2()
{
var data = TempData["products"].ToString();
List<Products> products = JsonSerializer.Deserialize<List<Products>>(data);
return View(products);
}
看法:
@model List<Products>
<ul>
@foreach (var item in Model)
{
<li>@item.ProductName</li>
}
</ul>
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/404844.html
標籤:
上一篇:如何在Razor頁面中檢索宣告值
