1

我正在使用 asp.net MVC 4 .cshtml 视图页面来开发一些 AngularJS 代码。在那个 .cshtml 页面上,我使用的是 $resource 对象。但是,当我使用 $resource 及其默认参数和 @ 符号定义 Angular 工厂时,VS 编辑器中的 asp.net MVC 引擎一直说编译错误“@userId 在此上下文中不存在。”。显然,用于 Razor 上下文和 Angular 上下文的 @ 符号存在歧义。

如何指定仅用于 Angular 的 @ 符号并摆脱 Razor 引擎错误编译消息?谢谢你。

我可以使用 . 我的视图页面的HTML扩展文件,但我想使用 .net MVC 。cshtml扩展文件,因此我不会失去 Razor 引擎和 Visual Studio IDE 工具的优势(例如 Intellisense、.cshtml 页面内的 C# 服务器端代码等)。

这是我在 JS 中的代码:

<script type="text/javascript">

    var myApp = angular.module("ListPeopleModule", ["ngResource"]);

    myApp.factory("PeopleFactory", function ($resource) {
        return $resource('../Api/GetPeopleApi/GetPeopleByPage/:userId/:sortColumnName', { 

userId: "@userId", sortColumnName: "@sortColumnName"  } , { update: { method: 'PUT'} });
    });

 </script>
4

0 回答 0