如何从asp.net mvc2中的文本框中检索值

时间:2010-02-10 07:11:36

标签: asp.net-mvc model-binding

我正在使用asp.net mvc中的图表项目。那么任何人都可以告诉我如何从文本框中检索值以应用于图表系列吗?

1 个答案:

答案 0 :(得分:2)

MVC会根据名称自动将表单值映射到Action参数。字符串和原始值类型很容易。

[HttpPost]
public ActionResult AttemptLogin( string username, string password )

我们也可以使用实体类型作为动作参数。在这种情况下,使用默认的ModelBinder,它会尝试绑定与“parameterName.PropertyName”的模式匹配的任何帖子数据。如果我的表单包含名为“user.FirstName”的字段,我的用户对象将设置该属性。

[HttpPost]
public ActionResult Save( User user )

自定义ModelBinder和BindAttribute为模型绑定提供了额外的灵活性。

// do not let MVC bind these properties
[Bind(Exclude="Created, Modified")]
public class User

我可以为User设置一个自定义活页夹,用于更改我自己的详细信息屏幕。这可能只有FirstName,LastName和Email属性。

[HttpPost]
public ActionResult ChangeDetails( guid Id, [ModelBinder(typeof(UserChangeDetailsBinder))] User user )

如果我有一个自定义绑定器应该用来代替默认绑定器,它将在global.asax.cs中注册。

ModelBinders.Binders[typeof(User)] = new UserBinder();

您还可以从Request["fieldname"]读取表单值。

相关问题