Я пытаюсь создать веб-страницу с использованием MVC, которая динамически изменяется на основе httprequests, полученных из приложения c #. Приложение c # отправляет на веб-страницу httpPost, который получает действие Index контроллера MVC.
httpPost, отправленный приложением c #:
HttpClient _SendClient = new HttpClient();
var pairs = new List<KeyValuePair<string, string>>
{
new KeyValuePair<string, string>("Packet", "none")
};
HttpContent content = new FormUrlEncodedContent(pairs);
HttpResponseMessage result = await _SendClient.PostAsync("http://localhost:53056", content);
вот контроллер MVC: HomeController.cs
namespace WebApplication2.Controllers
{
public class HomeController : Controller
{
public ActionResult Index()
{
string[] keys = Request.Form.AllKeys;
if (keys.Length > 0) //received packet
{
ViewBag.PacketText = keys[0];
}
else
{
ViewBag.PacketText = "none";
}
return View();
}
}
}
и представление: Index.cshtml
@{
ViewBag.Title = "Home Page";
}
@{
string packet = ViewBag.PacketText;
}
<div>
<h3 id="packetDisplay">@packet</h3>
</div>
Когда веб-страница запускается, на странице отображается «нет», как и должно быть. когда приложение c # запускается и запрос httpPost отправляется на веб-страницу, действие Index получает его и изменяет ViewBag.PacketText. Я отладил представление в VS, и переменная пакета изменяется на «Пакет», но веб-страница в браузере все еще читает «нет» и никогда не изменяется. Что мне нужно сделать, чтобы обновить веб-страницу при изменении PacketText?