如何将AngularJS变量值传递给C#控制器?

时间:2019-01-08 08:07:28

标签: c# angularjs asp.net-web-api

我想从AngularController.js到CCharpController.cs获取angularjs值

这是我想对$ scope.count1和$ scope.count2中的值求和

`

$scope.onSubmit = function () {
    for (var i = 0 ; i < $scope.Data.length ; i++) {
        if ($scope.Data[i].1 === true) {
            $scope.count1 += 1;
        }
        else if ($scope.Data[i].2 === true) {
            $scope.count2 += 1;
        }
    }
}

`

并传递给CCharp函数,

`

[Route("api/WarehousePlan/AllowWarehousePlan")]
[HttpPost]
[Authorize]
public IHttpActionResult AllowWarehousePlan([FromBody] WarehouseAllowDenyModel model){ 
    ....
    var count = $scope.count1 + $scope.count2 }

`

我希望从angularjs函数接收计数值。

2 个答案:

答案 0 :(得分:0)

首先声明一个模型

$scope.modelVM = {};

然后像在模型类中声明的一样将参数分配给模型

 $scope.modelVM.count1 += 1;
 $scope.modelVM.count2 += 1;

然后通过http发布模型

 $http.post('api/WarehousePlan/AllowWarehousePlan', $scope.modelVM).then(
            function (successResponse) {
                if (successResponse.status == '200') {
                    alert("Data Submit Successfully..");
                }
            },
            function (errorResponse) {
                alert("Not Successful");
            });

答案 1 :(得分:0)

在Controller文件中的Cookie中设置值,

 HttpContext.Current.Response.Cookies["count1"].Value = "1";

您可以访问JS文件中的cookie值,

$scope.count1 = $cookies.get("count1");

要更新JS文件中的Cookie值,

$cookies.put('count1',2);