1

有没有将多个对象发布到控制器的示例。ajax 帖子的数据看起来如何?

[HttpPost]
public string Register(UserLogin userLogin, Contact contact)
{
}

用户登录

public class UserLogin 
{
   public string Username { get; set; }
   public string Password { get; set; }
}

接触

public class Contact
{
   public string Firstname { get; set; }
   public string Lastname { get; set; }
}

阿贾克斯?

$.ajax({
   type: "POST",
   url: "SomeUrl"
   dataType: "json",
   contentType: "application/json; charset=utf-8",
   data: ? });
4

3 回答 3

5

试试这个

$.ajax({
   type: "POST",
   url: "SomeUrl"
   dataType: "json",
   contentType: "application/json; charset=utf-8",
   data: {
       'userLogin' : {
           'Username' : 'Username',
           'Password' : 'Password'
       },
       'contact' : {
           'Firstname' : 'Firstname',
           'Lastname' : 'Lastname'
       }
   }
});
于 2013-07-05T07:16:44.923 回答
1

只需要改变javascript。创建后像这样传递你的对象

var loginObject = {
  Username: uname,//get it using jQuery $('#Username').val()
  Password : pswrd    //same way
};
var contact = {
  Firstname = "",
  Lastname = "",
};

在ajax调用中,

data: {userLogin: loginObject, contact: contactObject}
于 2013-07-05T07:16:59.413 回答
0

您可以按照以下代码段

var userLogin = {
UserName : "", Password : ""
};

var contact = {
FirstName : "", LastName : ""
};

然后您可以将数据添加到 ajax 调用中,例如 data : {userLogin : userLogin, contact : contact}

于 2013-07-05T07:18:05.117 回答