Asp.net mvc 4 如何在MVC4框架中将消息实时加载到查看器

Asp.net mvc 4 如何在MVC4框架中将消息实时加载到查看器,asp.net-mvc-4,Asp.net Mvc 4,我正在创建一个MVC4.NET/C项目来自动加载数据。将新记录插入数据库时,我希望在查看器中实时显示一行消息。所以会是这样的 Record 1 has been loaded successfully! Record 2 has been loaded successfully! Record 3 has been loaded successfully! Record 4 has been loaded successfully! .... 有办法做到这一点吗? 谢谢你的建议。当然可以。首先

我正在创建一个MVC4.NET/C项目来自动加载数据。将新记录插入数据库时,我希望在查看器中实时显示一行消息。所以会是这样的

Record 1 has been loaded successfully!
Record 2 has been loaded successfully!
Record 3 has been loaded successfully!
Record 4 has been loaded successfully!
....
有办法做到这一点吗?
谢谢你的建议。

当然可以。首先,您应该编写一个返回记录数的方法。在加载页面上,您可以使用该方法接收记录数f.ex:

控制器:

public ActionResult CountRecords()
{
    int records = repository.CountRecords();
    return JavaScript(SimpleJsonSerializer.Serialize(records.ToString());
}

public ActionResult LoadRecord(int number)
{
    repository.LoadRecord(number);
    return JavaScript(SimpleJsonSerializer.Serialize("Success");
}
.cshtml

<script type="text/javascript">
$.ajax({
        type: "POST",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        url: "@Url.Action("CountRecords", "Controller")",
        success: function (response) {
            var rows = response.replace('\"', '');
            for (i = 1; i <= rows; i++)
            {
                $.ajax({
                    type: "POST",
                    contentType: "application/json; charset=utf-8",
                    dataType: "json",
                    data: i,
                    url: "@Url.Action("LoadRecord", "Controller")",
                    success: function (response) {
                        var status = response.replace('\"', '');
                        if (status == 'Success')
                        $('.messages').append('Record ' + i + ' has been loaded successfully!');
                    }
                });
            }
        }
    });
    </script>
当然,这比一次调用控制器要花更多的时间,但它可以工作。我不知道是否有可能在不多次调用控制器的情况下创建实时接口。 保存项目的操作与加载相同。
问候。

信号器是解决方案!