我是MVC的新手,我在网上查看了我的问题的其他解决方案,但我仍然无法找到我的代码有什么问题,我正在使用来自umbraco网站的代码(我是这样),我试图打电话给函数并从js传递var,我不明白是什么问题...,尝试用在线示例解决它但得到相同的错误...帮助

//C#

public class MokedLoginController : SurfaceController
    {                
        [HttpGet]
        [Route("umbraco/surface/MokedLogin/DoLogin/{id}")]
        public void DoLogin([FromBody]int member)
        {
            var _member = Services.MemberService.GetById(member);

            if (_member != null)
                FormsAuthentication.SetAuthCookie(_member.Username, false);
        }
    }

// JS

angular.module('umbraco').controller('MokedLoginController', [

    '$scope',
    '$http',
    'editorState',
    'contentResource',

    function ($scope, $http, editorState, contentResource) {

        // Check if you are creating a new member
        $scope.isNew = editorState.current.id <= 0;

        // Define the login as member function
        $scope.loginAsMember = function () {

            // ### Setup cookie  ????           
            var url = '/umbraco/surface/MokedLogin/DoLogin/{id}';                            
            // Get the current member id using the editorState
            var _memberId = editorState.current.id;
    // Do Login
        $http.post(
            url, _memberId
           ).then(
            function (response) {                       
                    // ### Redirect  ????
                    // Get the redirect page from config
                    var urlPageRedirect = $scope.model.config.memberRedirectPage;

                    // Check if page is set in the config
                    if (urlPageRedirect)
                    {
                        contentResource.getNiceUrl(urlPageRedirect).then(function (data) {
                            window.open(data, '_blank') // Get the first url
                        });
                    } else {
                        // Open the root page
                        window.open('/', '_blank');
                    }
                },
                function (error) {
                console.log(error.data);
                }
            );
        };
    }
]);
            // Do Login
            $http.post(

// the famouse exception that comes from ? and why ? System.ArgumentException:参数字典在'ThePoolInsurance.Web.Controllers.MokedLoginController'中为方法'Void DoLogin(Int32)'的非可空类型'System.Int32'的参数'member'包含空条目 . 可选参数必须是引用类型,可空类型,或者声明为可选参数 .