首页 > 代码库 > mvc表单如何绑定bool类型的属性或变量
mvc表单如何绑定bool类型的属性或变量
先来看一组代码:
视图代码:
@model MvcTest.Controllers.Test@{ Layout = null;}<!DOCTYPE html><html><head> <meta name="viewport" content="width=device-width" /> <title>表单提交</title></head> <body> <form method="POST" action=""> <input name="Tester" value="@Model.Tester" /> <input type="submit" /> </form> </body></html>
Model类:
public class Test{ public bool Tester { get; set; }}
控制器代码:
public ActionResult FormPost(){ Test model = new Test(); model.Tester = true; return View(model);}
问题是在view中name为Tester的Input属性value值是多少?相信很多人会认为是true,但结果是value。
同样把Model.Tester放在其他html标签里,值会跟其属性一一对应。
<span id="id" name="name"></span>
那怎样解决这个问题呢?请看下面代码:
<input name="Tester" value="@Model.Tester.ToString()" />
对于bool类型转换string解释是"将此实例的值转换为其等效字符串表示形式("True"或"False")",照这
样说,Model.Tester.ToString返回true也不难理解。但是为什么没有直接返回true呢?这可能是razor视
图是这样处理的吧。在asp.net里不存在这样的情况。
在此要感谢园友(519740105)的帮助,问题才得以解决。
mvc表单如何绑定bool类型的属性或变量
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。