【问题标题】:Recognize JavaScript calls to C# functions识别对 C# 函数的 JavaScript 调用
【发布时间】:2016-07-27 18:26:51
【问题描述】:

在我的工作中,我和我的团队在 Visual Studio 中处理一个 .NET MVC 项目,我们经常需要从 JavaScript 文件中调用控制器或模型函数。例如:

$.ajax({
                "dataType": 'json',
                "type": "POST",
                "url": "/Lookup/CreateLeadForEmployee"

这用于从查找控制器中调用CreateLeadForEmployee 方法。问题是,每当我们想要重命名这些类型的函数或查找对它们的引用时,我们必须使用更多的手动搜索过程,而不是 Visual Studio 的内置功能(或不同扩展和工具的功能)。这通常会导致错误和问题,因为很容易错过某些参考。

我想知道的是,是否有某种工具、包、附加组件或代码语法可以让我和我的团队告诉 Visual Studio 识别我提供的作为特定 C# 调用的示例职能?换句话说,我如何做到这一点,以便当我在 Visual Studio 中右键单击 CreateLeadForEmployee 并选择 “查找所有引用” 时,它将包含对由JavaScript 文件?

【问题讨论】:

    标签: javascript c# asp.net asp.net-mvc visual-studio


    【解决方案1】:

    您的问题的快速回答是,没有工具可以解决这个问题。

    服务器端智能感知仅关注服务器端组件,而客户端智能感知仅处理客户端组件,例如脚本、css、html 元素和属性。

    另一种方法是在 Visual Studio 中使用 crtl + shift + F 进行搜索,以查找所有出现的特定关键字,您可以适当地更新“查找结果”窗口中显示的每个文件。

    【讨论】:

      【解决方案2】:

      您可以做的一件事是使用Url.Action 辅助方法来生成此操作方法的相对路径。

      所以你可以不做url: "/Lookup/CreateLeadForEmployee",而是做

      url: "@Url.Action("CreateLeadForEmployee","Lookup")"

      razor在执行页面时,会执行Url.Action方法,并生成该action方法的相对url。

      如果您在 razor 视图中使用 javascript 代码,上述内容将起作用,如果您在外部 js 文件中使用 url,则应生成并将相对 url 值设置为变量并在外部 js 中使用它this post 中解释的文件。

      通过这种方法,visual studio 的“查找用法”将发现该位置。

      【讨论】:

        猜你喜欢
        • 2011-07-10
        • 2017-06-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-12-19
        • 1970-01-01
        • 1970-01-01
        • 2014-04-07
        相关资源
        最近更新 更多