asp.net-mvc – ASP.NET MVC:在回发上更改模型的属性
发布时间:2020-12-15 23:16:22 所属栏目:asp.Net 来源:网络整理
导读:我一直在玩ASP.NET MVC,遇到了我无法想象的东西. 假设我有一个这样的对象: public class TestObject{ public string Name { get; set; } public int Age { get; set; }} 和一个视图页面(Create.aspx),如下所示: form action="/Create" method="post" p %=H
我一直在玩ASP.NET MVC,遇到了我无法想象的东西.
假设我有一个这样的对象: public class TestObject { public string Name { get; set; } public int Age { get; set; } } 和一个视图页面(Create.aspx),如下所示: <form action="/Create" method="post"> <p> <%=Html.TextBox("Name") %> </p> <p> <%=Html.TextBox("Age")%> </p> </form> 在我的控制器上我有这些行动: [AcceptVerbs(HttpVerbs.Get)] public ActionResult Create() { return View(new TestObject { Name = "DefaultName",Age = 10 } ); } [AcceptVerbs(HttpVerbs.Post)] public ActionResult Create(TestObject o) { o.Name = "ChangedNameToSomethingElse"; o.Age = 15; return View(o); } 即使在回发之后,Html.TextBox()方法总是使用默认值来生成文本框,其中对象的值返回不同的属性.现在,我不能想到一个真实世界的例子,为什么我想做这样的事情,但我仍然不明白为什么我总是最终有文本框填充模型的值在创建动作与AcceptVerbs(HttpVerbs.Get)属性. 注意:我尝试过Html.TextBox(“Name”,Model.Name),但结果仍然相同.而且我验证了使用AcceptVerbs(HttpVerbs.Post)创建操作实际上是通过ViewData将值传递给View来运行的. 有没有什么明显的我失踪了,还是有这个行为背后的推理? 解决方法
如果您通过方法声明或UpdateModel或TryUpdateModel将绑定的结果绑定到诸如TestObject的对象,则将使用这些值填充名为ModelState的属性. HTML帮助器(如Textbox)将始终与显式传递的模型对象绑定到modelstate.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc-4 – Visual Studio 2013 C#Web项目构建但IDE报
- asp.net – 从内部回发没有解雇
- asp.net-mvc – 使用带有angularJS的jQuery验证的razor视图
- asp.net-mvc-3 – 使用Jquery Ajax渲染部分视图与变量数据
- asp.net-mvc-5 – ASP.net身份禁用用户
- asp.net – 带有UpdatePanel Viewstate问题的JQuery BlockU
- 如何在ASP.NET WebForms中实现TDD
- asp.net-mvc – scanMap的目的.CallingAssembly,scan.WithD
- asp.net-mvc – MVC DateTime文本框格式化问题
- 如何在ASP.NET应用程序中创建类的实例
推荐文章
站长推荐
- Response.Redirect()vs Response.RedirectPerman
- asp.net-core – 从ActionFilterAttribute设置Vi
- asp.net – 两个DLL中都存在“ModelClientValida
- ASP.NET Core 1.0 ConfigurationBuilder().AddJs
- asp.net – “与底层事务管理器的通信失败”错误
- asp.net – 将单元测试慢慢集成到项目中的步骤
- asp.net-mvc – 检查上传的文件是否是C#ASP.NET
- asp.net-mvc – 与asp.net MVC中的ExceptionHand
- asp.net – SignalR如何处理重复的连接ID?
- ASP.NET oAuth通过SSL访问令牌
热点阅读