0

在我的项目中,我在视图模型中有一个字符串字段以表单形式显示并回发到控制器。

但是由于某种原因,我想显示一个复选框,并从用户输入中检索字符串“True”/“False”

我在互联网上进行了搜索,发现了 如何在 ASP.NET MVC 中将字符串类型的模型属性呈现为复选框, 它利用了编辑器模板并实现了我的需要。

我的问题是如何实现这一点,因为在编辑器模板中,我只能看到它如何将字符串解释为复选框,但它从未解释或显示复选框值将如何用“绑定回字符串字段”真假”。

如果我想要“是”/“否”而不是“真”/“假”,我应该怎么做,我需要做任何转换器来将复选框解析为字符串吗?

对不起,我的英语不好,缺乏 mvc 知识,我刚开始 MVC 和 web 开发几天。

更新: 1. 我正在使用 ViewModel 与表单绑定,所以我需要类似 Html.CheckBoxFor(x=>x.value) 而 x.value 是一个字符串,显然这是不可能的默认 CheckboxFor

4

1 回答 1

1

我认为您要问的是如何将值保存回数据库中,这更像是后端 C# 或 VB 问题。

如您所知,当您在 HTML 页面上提交表单时,如果选中了一个复选框,它的值将在 POST 参数中传递回服务器:

前端 HTML:

<input type="checkbox" name="theCheckBox" value="Yes" />

Page_Load() 或类似的后端 C#

if(Request.Form["theCheckBox"] == "Yes") {
    // save value "Yes" into database
}

请记住,如果未勾选复选框,则 Request.Form["theCheckBox"] 将为空

于 2012-11-21T04:44:42.610 回答