Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 开始运行时显示MVC消息_Asp.net Mvc - Fatal编程技术网

Asp.net mvc 开始运行时显示MVC消息

Asp.net mvc 开始运行时显示MVC消息,asp.net-mvc,Asp.net Mvc,在编写脚本时,我想向视图显示一条消息,然后开始我的操作。但它没有显示任何内容,因为我的执行正在阻止我的startmessage。我不想使用jquery/javascript 我正在我的家庭/索引控制器中尝试此功能 return View(model: "Synck started, " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); 在我看来 <div id="txt"> @Mo

在编写脚本时,我想向视图显示一条消息,然后开始我的操作。但它没有显示任何内容,因为我的执行正在阻止我的startmessage。我不想使用jquery/javascript

我正在我的家庭/索引控制器中尝试此功能

    return View(model: "Synck started, " + DateTime.Now.ToString("yyyy-MM-dd 
    HH:mm:ss"));
在我看来

       <div id="txt">
           @Model       // Synck started, 2015-10-10 10:10:10
           @Html.Action("Start", "Home")
       </div>

@型号//同步开始,2015-10-10 10:10:10
@动作(“开始”,“主页”)

您可以尝试发送要显示并准备查看数据的消息

您的控制器:

controllerName () 
{
    ViewData["Message"] ="Synck started, " +       DateTime.Now.ToString("yyyy-MM-dd 
      HH:mm:ss";

return View();
}
你的看法:

<div id="txt">
          @ViewData["Message"]      // Synck started, 2015-10-10 10:10:10
           @Html.Action("Start", "Home")
       </div>

@ViewData[“Message”]//同步已开始,2015-10-10:10:10
@动作(“开始”,“主页”)

理想情况下,您应该将长时间运行的代码保存到一个单独的方法中,并从UI异步调用它。您可以使用jQuery
ajax
来实现这一点

public ActionResult Index()
{
  return View();
}
public ActionResult SyncMydata()
{
   //Execute your long running code here and return something as needed.
}
在索引视图中

<div id="status"></div>
<script type="text/javascript">
 $(function(){

   var url="@Url.Action("SyncMydata","Home")";

   $("#status").html("Started syncing at "+new Date().toLocaleString());
   $.post(url,function(res){
      $("#status").html("Sync completed"));
   });


 });
</script>

$(函数(){
var url=“@url.Action”(“SyncMydata”,“Home”);
$(“#status”).html(“在“+new Date().toLocaleString()开始同步”);
$.post(url,函数(res){
$(“#状态”).html(“同步完成”);
});
});
如果需要,可以从索引操作(服务器端)获取开始时间,而不是使用javascript时间。

这对我来说很有效

控制器::

// GET: Home/Index
public ActionResult Index()
{
    ViewBag.Message = "Synck started, " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
    return View();
}
观点:

@ViewBag.Message

为什么不想使用jquery/javascript?我很好奇它是在没有javascripts等的服务器上启动的。以前使用过jQuery,但每个月都要手动启动。我正在对13GB的数据进行语法分析,所以我认为可以使用startmessage。javascript/jquery位于客户端。查看我发布的答案。同样的结果,我想我应该通过电子邮件发送synkstart。没有jquery它就无法工作。你的答案与问题相比没有什么不同,但上面的答案正是我的意思