【问题标题】:AngularJS call webmethodAngularJS调用webmethod
【发布时间】:2023-03-12 18:37:01
【问题描述】:

我正在学习 AngularJS,并使用 mvc 应用程序对其进行了设置。 我正在尝试将之前用 JQuery 编写的一小段代码转换为 AngularJS,但不知道如何让它工作。问题是我不知道如何使用 AngularJS 在我的控制器中调用代码隐藏方法?

这就是它现在在 JQuery 中的工作方式:

//JQuery calling code behind
$(document).on("click", ".open-AppDescriptionDialog", function () {
    var title = "Title";
    var state = "active";

    //call method
    $.post('<%= Url.Action("StatusInfoString") %>', { header: title, status: state }, ParseResult);
});



//method in controller
[HttpPost]
public ActionResult StatusInfoString(string path, string status)
{
     ServiceClient serviceClient = new ServiceClient();
     var data = serviceClient.GetResults();

     return Content(data);
 }

有人知道这是怎么做到的吗?

【问题讨论】:

  • 在angularjs中查看$http服务

标签: jquery asp.net-mvc angularjs


【解决方案1】:

在 Angular 中,它们是实现此目的的不同方式,而 Angular 具有相同的模块

以下是列表

http://docs.angularjs.org/api/ngResource.$resource

http://docs.angularjs.org/api/ng.$http

http://docs.angularjs.org/api/ng.$httpBackend

你需要从上面注入这个模块,通常人们使用工厂方法为此编写服务,下面是示例:

app.factory('myService', function($http) {
   return {
     getList:function(params){
          var promise= $http({url: 'ServerURL',method: "POST", params: params}).then(function(response,status){

            return response.data;
            });
          // Return the promise to the controller
          return promise; 
        }
   }
});

app.controller('MainCtrl', function($scope, myService) {
  myService.getList(function(data) {
     $scope.foo = data;
  });
});

【讨论】:

  • 很抱歉,我是 AngularJS 的新手。我将如何去实际实施呢?你能链接到一些小例子吗?
  • 嗨,我收到“myService 未定义”。如何创建“我的服务”?
  • 您好,检查工作示例@plnkr.co/edit/3Eoq0zmv5NnOpHvyccaS?p=preview
猜你喜欢
  • 2013-10-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-11-07
  • 1970-01-01
  • 1970-01-01
  • 2012-04-08
  • 1970-01-01
相关资源
最近更新 更多