返回相同的视图似乎没有刷新页面

cod*_*ady 5 model-view-controller asp.net-mvc-5

我有一些控制器方法可以处理WMI类(唤醒选定的计算机,打开或关闭进程,启动RDP会话),然后重新加载当前视图。要重新加载,我尝试了以下操作:

    return View();
    return RedirectToAction("Index", "RenderNodesController");
    return RedirectToAction("Index");
    return Redirect(Request.UrlReferrer.ToString());
Run Code Online (Sandbox Code Playgroud)

所有方法都可以成功执行WMI调用,但是return语句不会重新加载页面。如果我手动刷新页面,它将重新加载并按预期显示更改的信息。同样相当奇怪的是,如果我在调试器中逐步执行return语句,我会看到视图的Index方法已执行,因此在这种情况下调试似乎无济于事。我将不胜感激。

cod*_*ady 0

我还是不知道为什么 return View(); 类似的代码不会执行,但最终我使用 Javascript 的 window.location.reload() 让它工作,完整的脚本如下:

<script type="text/javascript">
    $(document).ready(function () {
        $('.checkbox').click(function () {
            var url = '@Url.Action("CallProcess", "RenderNodes")';
            var networkname = $(this).data("networkname");
            var processname = $(this).data("processname");
            var filename = $(this).data("filename");
            var start = $(this).is(':checked');
            $.post(url, { NetworkName: networkname, ProcessName: processname, FileName: filename, Start: start },
                function (data) {
                    $("#CallProcess").html(data);
                });
            window.location.reload(true);
        })
    });
</script>
Run Code Online (Sandbox Code Playgroud)