Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/394.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ASP.NET MVC控制器中的后AngularJS模型到复杂模型_Javascript_Asp.net Mvc_Angularjs - Fatal编程技术网

Javascript ASP.NET MVC控制器中的后AngularJS模型到复杂模型

Javascript ASP.NET MVC控制器中的后AngularJS模型到复杂模型,javascript,asp.net-mvc,angularjs,Javascript,Asp.net Mvc,Angularjs,我试图用JavaScript创建一个模型,并通过$http.post将其发布到ASP.NETMVC控制器方法。检查发布的JSON时,会填充我的地址属性。但是,当点击ASP.NET MVC控制器时,所有相应的地址属性都为空 角度控制器方法: $scope.submitForm = function(isValid) { alert("Form is valid!"); var member = { TempCardNumber: $scope.tcardno,

我试图用JavaScript创建一个模型,并通过$http.post将其发布到ASP.NETMVC控制器方法。检查发布的JSON时,会填充我的
地址
属性。但是,当点击ASP.NET MVC控制器时,所有相应的地址属性都为空

角度控制器方法:

$scope.submitForm = function(isValid) {
    alert("Form is valid!");

    var member = {
        TempCardNumber: $scope.tcardno,
        Title: $scope.title,
        FirstName: $scope.firstName,
        LastName: $scope.lastName,
        Address: [
            {
                AddressLine1: $scope.address1,
                AddressLine2: $scope.address2,
                AddressLine3: $scope.address3,
                AddressLine4: $scope.address4,
                TownCity: $scope.towncity,
                County: $scope.county,
                PostCode: $scope.postcode,
                PhoneNumber: $scope.phone
            }
        ],
        EmailAddress: $scope.email
    };

    $http({
        method: 'POST',
        url: '/Home/Index',
        data: member
    }).success(function (data, status, headers, config) {

    });
}
发布JSON:

{"TempCardNumber":"633341677489986320","Title":"Mr","FirstName":"test","LastName":"user","Address":[{"AddressLine1":"8 Eaton Close","AddressLine2":" Hatton","TownCity":" Derby","County":" Derbyshire","PostCode":" DE65 5ED","PhoneNumber":"01234567890"}],"EmailAddress":"test@gmail.com"}
ASP.NET MVC控制器:

public ActionResult Index([FromBody]MemberModel model)
    {
        // do stuff
    }
我已经尝试过对JSON进行字符串化,在我的文章中将其作为
data:member
传递,并在ASP.NET MVC方法上使用
[FromBody]
,但是
model.Address
属性总是空的

我是否可以在不将每个属性发布到ASP.NET MVC控制器的情况下执行此操作

编辑:为清晰起见,添加了MemberModel POCO

// MemberModel class
public string Title {get;set;}
public string FirstName {get;set;}
public string LastName {get;set;}
public Address Address{get;set;}
public string TempCardNumber {get;set;}
public string Email {get;set;}

// Address POCO 
public string AddressLine1 {get;set;}
public string AddressLine2 {get;set;}
public string AddressLine3 {get;set;}
public string AddressLine4 {get;set;}
public string TownCity {get;set;}
public string County {get;set;}
public string Postcode {get;set;}
public string PhoneNumber {get;set;}

确保您正在控制器方法上使用
[HttpPost]
属性

BindModel
应该在某个地方。。。如果在服务器端的POST事件中,它应该基于输入类型的模型进行绑定,否则对象将无法正确强制转换。。你能告诉我们你的类模型
MemberModel
?你不需要在某个地方设置内容类型来告诉ASP.NET MVC你正在发布JSON吗?尝试将
标题:{“内容类型”:“application/json”}
添加到您的
$http
请求中。MemberModel类addedhe已经说过他的控制器被击中,所以我怀疑这是问题所在。但是很高兴错了。是的,控制器被击中了-我有[HttpPost]属性,你找到解决方法了吗?我也遇到了同样的问题。请尝试将对象传递到JSON.stringify()中,并将其用作数据值