重定向到ASP.NET MVC中的操作,方法不会返回视图 - c#

我正在使用jquery post方法执行服务器端操作

方法是:

 function redirectToDraft() {

    updateInboxGridAndCloseApproveDialog();
    $.post('/Personnel/AgendaApproveDocument');
  }

它将发布到此动作,然后在该动作中,我需要重定向到另一个控制器上的另一个动作,如下所示:

 public ActionResult AgendaApproveDocument(int? id){

     return RedirectToAction("RelatedDocumentDraft",  new RouteValueDictionary(
                new
                {
                    controller = "RegisterLetter",
                    action = "RelatedDocumentDraft",
                    title = relatedDoc.Name,
                    factory = relatedDoc.DocumentFactory,
                    activityId = action.WorkItem.Id
                }));

}

它可以工作并重定向到该方法:

 public ActionResult RelatedDocumentDraft(int?activityId, string factory, string title)
    {
    return View("~/Views/RegisterLetter/NewDraft.aspx");
    }

我的问题是它不会返回视图“ NewDraft”

有什么问题吗?

参考方案

在您的AJAX呼叫中,您尚未订阅成功回调,因此将不会发生任何事情。如果要处理AJAX调用的结果,则应执行以下操作:

$.post('/Personnel/AgendaApproveDocument', function(result) {
    // the result variable here will contain the markup of the view    
    // so you could for example replace some portion of the DOM with it
    // (assuming of course it is a partial view):

    $('#foo').html(result);
});

ASP.NET MVC 5自定义登录,无需脚手架,数据库优先 - c#

我对asp.net和mvc还是很陌生,所以我正在努力学习尽可能多的知识...为此,我从头开始编写博客网站,但是我对身份验证和授权有些困惑。由于我倾向于不真正使用任何脚手架的东西,所以我首先要使用数据库,所以不希望asp.net身份为我创建表。我对散列和加盐密码很酷,并对照数据库检查用户,我遇到的麻烦是将用户设置为登录状态并检查他们应该能够访问什么。我真的很想…

将自定义代码/脚本添加到ASP.net MVC 3应用程序的头文件中? - c#

我有一个MVC应用程序,我试图使其中一个视图显示此editable table并具有服务器端代码,以实际支持具有适当回调功能的基于JavaScript的编辑器。我的第一个问题是,我需要在表应显示的视图的标题中添加一些自定义javascript,但该标题似乎限制在_Layout.cshtml中,这意味着在MVC应用程序的每个视图中添加该自定义javascrip…

ASP.NET MVC ExecuteResult与ActionResult - c#

我见过它用来向响应添加标头,然后返回文件进行流传输。public override void ExecuteResult(ControllerContext context) { ... response.AddHeader("Accept-Ranges", "bytes"); response.AddHeader(&…

MVC C#TempData - c#

有人可以解释一下MVC中TempData的目的。我了解它的行为类似于ViewBag,但除此之外它还有什么作用。 参考方案 TempData应该是一个短暂的实例,您应该 仅在当前和后续请求中使用它!以来 TempData以这种方式工作,您需要确定下一步 要求,并且重定向到另一个视图是您唯一的时间 可以保证这一点。因此,唯一使用TempData的方案 在重定向时…

从JAVA调用方法C#.NET - java

我有一个C#.NET项目中创建的dll,我想从Java程序中调用方法。我想知道是否存在实现此目标的机会,然后遇到了JNA和JNI。我应该使用哪一个?有什么建议么?我只需要在使用C#.NET编写的类中调用方法并处理Java程序的结果即可。 参考方案 这取决于您的应用程序,但是您可以将C#DLL放在服务中,例如WCF并以这种方式将功能公开给Java代码。使用ws…