【问题标题】:ActionResult method in .NET MVC gets loaded twice.NET MVC 中的 ActionResult 方法被加载两次
【发布时间】:2019-06-25 02:19:56
【问题描述】:

我今天在我的项目上做一些事情,我注意到一个项目内的所有索引页面上都发生了一些非常奇怪的事情。例如,我的操作如下所示:

   public ActionResult Index(string id=null, string IsOld=null)
   {

        string id = null;
        string IsOld = null;
        return View();  
   }

没有任何指示性原因,此方法调用了两次。例如,如果我将断点放在:

   string id = null;

当页面加载时,我会看到编译器在该行代码上停止两次...加载时两次使用相同的方法...这很奇怪,我不知道为什么会发生这种情况?

有没有人遇到过这种问题,谁能帮帮我?

附:我还尝试禁用此页面上的所有脚本,以便排除某些 javascript 正在执行发布或两次调用该方法的可能性......即使禁用所有脚本,我仍然会得到双重调用......

【问题讨论】:

    标签: c# asp.net-mvc asp.net-mvc-4 asp.net-mvc-5 actionresult


    【解决方案1】:

    我以前见过这种行为,尤其是在默认 url 上,它可能是几件事:

    • 空图像标签
    • 脚本标签上的空src标签
    • css 标签上的空链接
    • Google adwords 造成了一次 - 他们在去年 IIRC 遇到了一个错误
    • html 中的嵌套表单
    • 忘记元刷新头标签
    • 双重绑定的 JS 点击处理程序
    • 嵌套视图中的 Html.RenderAction - 看不见,心不在焉等

    最好在您选择的浏览器中启动网络检查器。如果您可以看到在浏览器中启动了双重调用,这将告诉您它是客户端还是您的剃须刀页面中的其他东西导致了它。

    快乐狩猎

    【讨论】:

    • 在我的情况下,它是“css 标记上的空链接”......奇怪的是,这个小东西如何导致您的应用程序占用 2 倍的资源......:/
    猜你喜欢
    • 2020-02-28
    • 2013-10-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-04
    • 1970-01-01
    • 2017-06-12
    • 1970-01-01
    相关资源
    最近更新 更多