C# ASP.NET MVC控制器方法超时

C# ASP.NET MVC控制器方法超时,c#,asp.net-mvc,debugging,C#,Asp.net Mvc,Debugging,我目前正在调试一个ASP.NET MVC应用程序,该应用程序刚刚部署到另一台服务器 暂存服务器和生产服务器之间的所有版本都相同,但在生产服务器(64位,但以32位模式运行应用程序)中,我在以下控制器操作中获得超时: [AcceptVerbs(HttpVerbs.Post)] public ActionResult Create(Person person, PeopleCertificationLevel peopleCertificationLevel, Address add

我目前正在调试一个ASP.NET MVC应用程序,该应用程序刚刚部署到另一台服务器

暂存服务器和生产服务器之间的所有版本都相同,但在生产服务器(64位,但以32位模式运行应用程序)中,我在以下控制器操作中获得超时:

    [AcceptVerbs(HttpVerbs.Post)]
    public ActionResult Create(Person person, PeopleCertificationLevel peopleCertificationLevel, Address address)
    {
        try
        {
            person.PeopleCertificationLevels.Add(peopleCertificationLevel);
            person.Addresses.Add(address);
            _peopleService.SavePerson(person);
            SetMessage("O marítimo foi registado com sucesso.");
            return Redirect("~/People/Show/" + person.ID);
        }
        catch
        {
            SetErrorMessage("Por favor valide e preencha devidamente os campos assinalados a asterisco (*).");
            Create();
            return View(person);
        }
    }
我已经尝试在try块之前抛出一个异常,但是我总是在这里得到一个请求超时

在我看来,这个请求并没有达到这个目的。关于我应该如何调试它或者我应该做什么有什么建议吗

更新:我认为这与模型绑定有关。如果我删除绑定,请求将被快速调度。但是,我尝试了几种方法,例如在操作参数之前使用Bind属性,尝试创建包含3个属性(Person、PeopleCertificationLevel、Address)的NewPersonForm类,甚至尝试使用FormCollection和UpdateModel调用。都没有用


更新2:此应用程序以32位编译,并在64位环境中运行。虽然AppPool中启用了32位应用程序,但我怀疑这可能是导致问题的原因。

可能没有这么傻,但我的2美分:

  • 您是否确实检查了表单是否通过提交按钮发布
  • 所有参数是否与路由中指定的名称完全匹配

是否在生产服务器上正确配置了ASP.NET MVC路由?确实如此。其他所有控制器方法都有效。除了这个。我的意思是,我需要在IIS中做些什么来启用MVC路由?我可能会尝试删除对象参数,并查看通过“表单”构造返回的内容。可能是实例化这些对象有问题吗?请添加答案,以便我可以对它们进行投票。谢谢。是的,一切都好。在我的机器上,即使使用ASP开发服务器(VS2008默认启动的服务器),它也可以正常工作。在这台机器里,这是唯一一种不用担心的形式。