1

我是第一次使用 ASP.NET MVC 3。我想用一个参数调用一个控制器动作。这个参数是一个对象,不是一个简单的类型。假设:Controller = "Person", Action="Add",这个动作的唯一参数是一个对象:"Person" = {​​Name: "aaa", Age: 24}

我为这样的参数(Person)实现了需要的 ModelBinder。我使用以下说明从客户端调用此操作:

var person= {}; 
person.Name = "aaa"; person.Age = 24;
var **url = '/Person/Add/' + $.param(person)**;
**window.location = url;**

这是我在 Asp.NET MVC 中的第一个程序。我认为这是编写“url”的正确方法。您能帮我以正确的格式创建变量“url”(需要调用服务器操作)吗?

认为

4

1 回答 1

1

您可以像这样在查询字符串中传递它

var thatUrl = "/Person/Add?Name=aaa&age=24";
thatUrl=encodeURI(thatUrl);  //Let's encode :)
window.location.href=thatUrl;

假设你有HttpGETAction 方法,看起来像

public ActionResult Add(string Name,string Age)
{
  //you will have the values in the argumens. Do something now
}

或者

public ActionResult Add(Person model)
{
  //you will have the values in the object
  //check for model.Name & model.Age
}

假设 Name 和 Age 是Person类的 2 个属性

于 2012-06-23T18:19:30.113 回答