У меня есть бритвенное решение с частичным, которое было включено в шаблонное решение в Visual Studio. Код в частичном коде - это просто сообщение о состоянии, например:
@model string
@if (!String.IsNullOrEmpty(Model))
{
var statusMessageClass = Model.StartsWith("Error") ? "danger" : "success";
<div class="alert alert-@statusMessageClass alert-dismissible" role="alert">
<button type="button" class="close" data-dismiss="alert" aria-label="Close"><span aria-hidden="true">×</span></button>
@Model
</div>
}
На странице на него ссылаются так:
<partial name="_StatusMessage" model="Model.StatusMessage" />
В модели страницы этой страницы введите значение сообщения следующим образом:
[TempData]
public string StatusMessage { get; set; }
public IActionResult OnGet(int regFlow)
{
StatusMessage = "Blah blah status message";
return Page();
}
Проблема в том, что, хотя сообщение о состоянии отображается нормально на рассматриваемой странице, оно сохраняется, когда я нажимаю на другую страницу, на которой также есть В нем частично объявлено частичное StatusMessage - поэтому оно по-прежнему отображает сообщение, относящееся к предыдущей странице, но совершенно не относящееся к текущей странице. Как я могу предотвратить сохранение сообщения на нескольких страницах?