首页 > 解决方案 > Asp.net mvc控制器代码方法来袭

问题描述

我对 asp.net mvc 比较陌生,但我曾在 asp.net webforms 上工作过。我面临的问题是,如果我单击需要完成的某些操作并且必须抛出警报消息,我的视图页面上有按钮。我可以通过 onclick 事件在 asp.net webforms 中轻松实现这一点并返回到同一页面,但我无法做到这一点 asp.net mvc

控制器中的动作方法:

  Public  void loaddata()
  {
    //Some logic
    Viewbag.message="success"
  }

在视图页面中:

  <scripts>
   @if(Viewbag.message!= null)
   {
    //javascript alert box logic
   }
  <scripts>

此代码在控制器操作方法之前有效,但在完成后它不会转到我有按钮的视图

标签: c#asp.netasp.net-mvcasp.net-mvc-4

解决方案


您的 controllen 操作正在返回 void,因此没有任何内容可以返回您的视图。在 MVC 中,这是一种不好的做法。如果你真的不想返回视图或部分视图,你也可以返回不同类型的 ActionResult。 https://docs.microsoft.com/en-us/dotnet/api/system.web.mvc.actionresult?view=aspnet-mvc-5.2

在这种情况下,返回 HttpStatusCodeResult 或 JsonResult 可能会对您有所帮助。


推荐阅读