Как я могу отображать данные в представлении - PullRequest
0 голосов
/ 12 февраля 2020

Как отобразить данные в представлениях в asp. net core MVC ?. В Index.cs html у меня есть следующая ссылка на страницу сведений.

@Html.ActionLink("You_Controller_Name", "GetProductsDetail", new { id = item.ID }) |

У меня есть этот контроллер для получения продукта по идентификатору

public IActionResult Detail()
{
   return View();
}

[HttpGet()]
public async Task<IActionResult> GetProductsDetail(string id)
{
  var product_list = (await ProductService.GetProducts()).ToList();
  var product = product_list.FirstOrDefault(a => a.ProductCode == id);
  return view(product);
}

Требуется помощь при отображении продукта информация на странице деталей.

Ответы [ 2 ]

1 голос
/ 12 февраля 2020

Вы также можете передать действие ProductName в Detail, используя RedirectToAction, а затем отобразить его на экране, используя ViewBag.

Контроллер:

[HttpGet]
public async Task<IActionResult> GetProductsDetail(string id)
    {
       var product_list = (await ProductService.GetProducts()).ToList();
       var product = product_list.FirstOrDefault(a => a.ProductCode == id);
       return RedirectToAction("Detail", new { name = product.ProductName });

    }


public IActionResult Detail(string name)
    {
        ViewBag.ProductName = name;
        return View();
    }

Подробно Вид:

<h1>@ViewBag.ProductName</h1>
1 голос
/ 12 февраля 2020

Вы должны сделать это в GetProductsDetail Действие

return View("Detail", product);

Прочитайте следующее, чтобы лучше понять

Обновлено

Вы можете сохранить как это в

@ViewBag.ProductName = product.ProductName

В представлении:

<h1>@ViewBag.ProductName</h1>

Полный код

[HttpGet]
public async Task<IActionResult> GetProductsDetail(string id)
{
   var product_list = (await ProductService.GetProducts()).ToList();
   var product = product_list.FirstOrDefault(a => a.ProductCode == id);
   @ViewBag.ProductName = product.ProductName

   return View("Detail", product); // Make sure that in View is expecting `ProductList`, Otherwise, You just return View("Detail");

}

Вызов другого другого представления из контроллер использует ASP. NET MVC 4

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...