gpt4 book ai didi

asp.net-mvc-3 - 如何在 View 中显示 bool 值并将值保存到数据库

转载 作者:行者123 更新时间:2023-12-02 04:02:55 24 4
gpt4 key购买 nike

我有一个包含位值(真/假)的表

表定义:

CharacterID int 
isActive bit
UserId uniqueidentifier

我有两个问题:

  1. 如何在下拉列表的编辑 View 中显示现有的选定选项
  2. 我需要将值(是/否)保存为 true 和 false 在数据库中。

这是我到目前为止所做的尝试:

<div class="editor-label">
@Html.LabelFor(model => model.IsActive)
</div>
<div class="editor-field">
@Html.DropDownList("", new SelectListItem[] { new SelectListItem() { Text = "Yes", Value = "true", Selected = Model.IsActive }, new SelectListItem() { Text = "No", Value = "false", Selected = !Model.IsActive }})
</div>

最佳答案

假设 model.IsActive 声明为 bool:

使用复选框对用户来说不是更直观并且需要更少的点击吗?在这种情况下,您可以使用:

@Html.EditorFor(model => model.IsActive)

如果你真的想要下拉菜单,那么这个SO可能会提供一个有效的实现:https://stackoverflow.com/a/4036922/1373170

应用到您的上下文,我相信它会是:

 @Html.DropDownListFor(model => model.IsActive, new SelectList(new SelectListItem[] { new SelectListItem() { Text = "Yes", Value = "True" }, new SelectListItem() { Text = "No", Value = "False"}}, model.IsActive.ToString())

现在,为了将其保存到数据库,我必须知道您是否使用 EF、L2S 等。但我想您的 Controller 中已经设置了一个用于保存的操作。在这种情况下,它可能已经接收到模型的实例作为参数。使用 DropDownListFor 而不是 DropDownList,您的模型应该由 MVC 的默认 ModelBinder 自动绑定(bind),并且您应该能够将其映射到数据库实体并存储它。

关于asp.net-mvc-3 - 如何在 View 中显示 bool 值并将值保存到数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11371590/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com