Как передать данные из контроллера в представление в C# - PullRequest
0 голосов
/ 09 января 2020

Я хотел бы рассчитать время, необходимое для запуска метода, поэтому я пытаюсь передать время начала, время окончания и прошедшее время в представление из контроллера. Как я могу это сделать?

Это контроллер, который я уже использую для передачи значения из файла CS, поэтому ViewBag.Message для этого, но я хочу использовать другой для передачи большего количества значений на просмотр.

public ActionResult Test()
        {
            var startTime = DateTime.Now;
            ViewBag.Message = _importFactory.importScanSourceProductData(CurrentTenantId, "", null, CurrentUserId);
            var endTime = DateTime.Now;
            var elapsedTime = endTime - startTime;
            ViewBag.Message = elapsedTime;
            return View();
        }

Просмотр

@model dynamic
@{
    Layout = null;
    var data = ViewBag.Message;
}

<!DOCTYPE html>

<html>
<head>
    <meta name="viewport" content="width=device-width" />
    <title>Test</title>

</head>
<body>
    <div>
        <h1>Import Scan Source Product Data</h1>
        <p>@data</p>
    </div>
</body>
</html>

1 Ответ

1 голос
/ 09 января 2020

Я бы предложил, если вы хотите передать несколько значений из контроллера для просмотра, вы должны создать новый класс модели представления со списком свойств, определенных для передачи.

Затем go вперед и создайте экземпляр этого класса в вашем контроллере и передать экземпляр в возвращаемом View ();

пример:

    public ActionResult Test()
            {
                var viewModel = new viewModel();
                var startTime = DateTime.Now;
                viewModel.Message = _importFactory.importScanSourceProductData(CurrentTenantId, "", null, CurrentUserId);
                var endTime = DateTime.Now;
                viewModel.EndTime =  endTime;
                var elapsedTime = endTime - startTime;
                viewModel.ElapsedTime =  elapsedTime;
                return View(viewModel);
            }

Теперь используйте это в .CS HTML Like - @viewModel. StartTime, et c

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