Asp.net MVC Razor如何显示两个模型字段的分组单选按钮

2023-11-29

我有一个简单的测验模型,我试图让用户从强类型视图中分组的两个单选按钮中选择正确答案/替代答案。但我使用的 lambda 表达式不起作用。我得到两个空白的单选按钮。我在这里和网上查看了几个问题,但我的模型是 IList,并且我找不到合适的示例。我发现的所有示例都适用于非 IList。

这是我的模型

Model:

public partial class Question
    {
        public int QuestionID { get; set; }
        public string QuestionBody { get; set; }
        public string CorrectAnswer { get; set; }
        public string AlternativeAnswer { get; set; }           
    }

我的控制器

public ActionResult Index()
        {
            QuizSimpleEntities quizEntities = new QuizSimpleEntities();
            var questions = from p in quizEntities.Questions
                            select p;

            return View(questions.ToList());

        }

我的型号:

  @model IList<Quiz.Models.Question>                                

 <h2>Welcome to the Quiz</h2>
  @Html.BeginForm(method:FormMethod.Post,controllerName:"Home",actionName:"index")
    {
        @foreach (var questions in Model)
        {

        <p>@questions.QuestionBody</p>  

        @* How to display the CorrectAnswer and AlternativeAnswer
           as two radio buttons grouped here? I will be posting the selected value back
        }

}

谢谢


您需要在视图模型上有一个属性,该属性将在发布表单时保存所选答案:

public partial class Question
{
    public int QuestionID { get; set; }
    public string QuestionBody { get; set; }
    public string CorrectAnswer { get; set; }
    public string AlternativeAnswer { get; set; }           

    public string SelectedAnswer { get; set; }
}

然后简单地循环模型的元素并生成所需的标记:

@model IList<Quiz.Models.Question>                                

<h2>Welcome to the Quiz</h2>
@Html.BeginForm( method:FormMethod.Post, controllerName:"Home", actionName:"index")
{
    @for (var i = 0; i < Model.Count; i++)
    {
        @Html.HiddenFor(x => x[i].QuestionID)
        <fieldset>
            <legend>
                @Html.DisplayFor(x => x[i].QuestionBody)
            </legend>
            <ul>
                <li>
                    @Html.HiddenFor(x => x[i].CorrectAnswer)
                    @Html.RadioButtonFor(x => x[i].SelectedAnswer, Model[i].CorrectAnswer)
                    @Html.DisplayFor(x => x[i].CorrectAnswer)
                </li>
                <li>
                    @Html.HiddenFor(x => x[i].AlternativeAnswer)
                    @Html.RadioButtonFor(x => x[i].SelectedAnswer, Model[i].AlternativeAnswer)
                    @Html.DisplayFor(x => x[i].AlternativeAnswer)
                </li>
            </ul>
        </fieldset>
    }

    <button type="submit">OK</button>
}

注意:提交表单后,POST 操作可能会执行IList<Question>模型中您将获得每个问题的答案(在SelectedAnswer财产)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Asp.net MVC Razor如何显示两个模型字段的分组单选按钮 的相关文章

  • 捕获 .aspx 和 .ascx 页面中的异常

    问题说明了一切 请看以下示例代码 ul li li ul
  • 为什么 C 程序使用 Scanf 给出奇怪的输出?

    我目前正在学习 C 编程 并且遇到了这个奇怪的输出 Program will try functionalities of the scanf function include
  • 在 C++ 代码中转换字符串

    我正在学习 C 并开发一个项目来练习 但现在我想在代码中转换一个变量 字符串 就像这样 用户有一个包含 C 代码的文件 但我希望我的程序读取该文件并插入将其写入代码中 如下所示 include
  • 在 Mono 中反序列化 JSON 数据

    使用 Monodroid 时 是否有一种简单的方法可以将简单的 JSON 字符串反序列化为 NET 对象 System Json 只提供序列化 不提供反序列化 我尝试过的各种第三方库都会导致 Mono Monodroid 出现问题 谢谢 f
  • Selenium - C# - Webdriver - 无法找到元素

    在 C 中使用 selenium 我试图打开浏览器 导航到 Google 并找到文本搜索字段 我尝试下面的 IWebDriver driver new InternetExplorerDriver C driver Navigate GoT
  • 混合模型优先和代码优先

    我们使用模型优先方法创建了一个 Web 应用程序 一名新开发人员进入该项目 并使用代码优先方法 使用数据库文件 创建了一个新的自定义模型 这 这是代码第一个数据库上下文 namespace WVITDB DAL public class D
  • Android NDK 代码中的 SIGILL

    我在市场上有一个 NDK 应用程序 并获得了有关以下内容的本机崩溃报告 SIGILL信号 我使用 Google Breakpad 生成本机崩溃报告 以下是详细信息 我的应用程序是为armeabi v7a with霓虹灯支持 它在 NVIDI
  • 为什么这个 makefile 在“make clean”上执行目标

    这是我当前的 makefile CXX g CXXFLAGS Wall O3 LDFLAGS TARGET testcpp SRCS main cpp object cpp foo cpp OBJS SRCS cpp o DEPS SRCS
  • JavaScript 错误:MVC2 视图中的条件编译已关闭

    我试图在 MVC2 视图页面中单击时调用 JavaScript 函数 a href Select a JavaScript 函数 function SelectBenefit id code alert id alert code 这里 b
  • 测量进程消耗的 CPU 时钟

    我用 C 语言编写了一个程序 它是作为研究结果创建的程序 我想计算程序消耗的确切 CPU 周期 精确的循环次数 知道我怎样才能找到它吗 The valgrind tool cachegrind valgrind tool cachegrin
  • 保证复制省略是否适用于函数参数?

    如果我理解正确的话 从 C 17 开始 这段代码现在要求不进行任何复制 Foo myfunc void return Foo auto foo myfunc no copy 函数参数也是如此吗 下面的代码中的副本会被优化掉吗 Foo myf
  • 如何从 Boost.PropertyTree 复制子树

    我有一些boost property tree ptree 我需要树来删除一些具有特定标签名称的元素 例如 xml 表示源ptree如下
  • .NET 和 Mono 之间的开发差异

    我正在研究 Mono 和 NET C 将来当项目开发时我们需要在 Linux 服务器上运行代码 此时我一直在研究 ASP NET MVC 和 Mono 我运行 Ubuntu 发行版 想要开发 Web 应用程序 其他一些开发人员使用 Wind
  • C++ 指针引用混淆

    struct leaf int data leaf l leaf r struct leaf p void tree findparent int n int found leaf parent 这是 BST 的一段代码 我想问一下 为什么
  • 如何高效计算连续数的数字积?

    我正在尝试计算数字序列中每个数字的数字乘积 例如 21 22 23 98 99 将会 2 4 6 72 81 为了降低复杂性 我只会考虑 连续的数字 http simple wikipedia org wiki Consecutive in
  • 如何从 Windows Phone 7 模拟器获取数据

    我有一个 WP7 的单元测试框架 它在手机上运行 结果相当难以阅读 因此我将它们写入 XDocument 我的问题是 如何才能将这个 XML 文件从手机上移到我的桌面上 以便我可以实际分析结果 到目前为止 我所做的是将 Debugger B
  • 如果将变量设置为等于新对象,旧对象会发生什么?

    假设我们有一个 X 类not有一个超载的operator 功能 class X int n X n 0 X int n n n int main X a 1 an object gets constructed here more code
  • .Net Reactive Extensions Framework (Rx) 是否考虑拓扑顺序?

    Net 反应式扩展框架是否按拓扑顺序传播通知以最大限度地减少更新量 就像 Scala Rx 所做的那样 Net 反应式扩展 Rx 是否可以 https github com lihaoyi scala rx wiki How it Work
  • 如果找不到指定的图像文件,显示默认图像的最佳方式?

    我有一个普通的电子商务应用程序 我将 ITEM IMAGE NAME 存储在数据库中 有时经理会拼错图像名称 为了避免 丢失图像 IE 中的红色 X 每次显示产品列表时 我都会检查服务器中是否有与该产品相关的图像 如果该文件不存在 我会将其
  • 如何为有时异步的操作创建和实现接口

    假设我有数百个类 它们使用 计算 方法实现公共接口 一些类将执行异步 例如读取文件 而实现相同接口的其他类将执行同步代码 例如将两个数字相加 为了维护和性能 对此进行编码的好方法是什么 到目前为止我读到的帖子总是建议将异步 等待方法冒泡给调

随机推荐

  • Python 文本中重复的短语

    我有一个问题 我不知道如何解决它 请给一个建议 我有一条文字 好大好大的文字 任务是找到文本中所有长度为3 包含三个单词 的重复短语 在我看来 你有两个问题 第一个是提出一种标准化输入的有效方法 你说你想找到输入中的所有三词短语 但是短语是
  • preg_match 获取多个

    我有一个类似于 w e 更多 HTML 的页面 我需要获取标签之间的所有数据 而不是第一个数据 目前我使用
  • AWS Athena - 查询分区中不同年份的数据

    我们在 S3 中划分了大型数据集 例如s3 bucket year YYYY month MM day DD file csv 查询 Athena 中不同年份的数据并利用分区的最佳方式是什么 这是我尝试过的2018 03 07 至 2020
  • var_dump(对象)的结果是什么意思?

    var dump object 返回 object 1我真的很想知道 object 1 object 2 和 object 3 之间有什么区别 任何帮助表示赞赏 对于具有相同信息 相同类 相同属性 的对象 它允许确定它们是否是相同的实例 例
  • 如何禁用 Windows 编辑控件上的小触摸键盘

    在支持平板电脑的 Windows 版本中 当编辑控件获得焦点时 会出现一个小键盘图标 如果您触摸它 触摸键盘就会弹出 有办法禁用这个吗 如果你有自己的触摸键盘 那就相当不方便了 我想对代码中的某些编辑控件禁用它 即 我不是在寻找 Windo
  • 如何将 Cython 生成的模块从 python 导入到 C/C++ 主文件? (C/C++ 编程)[关闭]

    Closed 这个问题需要细节或清晰度 目前不接受答案 因此 我有一个用 python 编写的函数 并且按照 Cython 文档 使用 distutils 构建 Cython 模块 中的步骤进行操作 但是 我不清楚如何使用在 python
  • 新添加的列的数据未保存到数据库

    我在 Rails 4 应用程序中使用 Devise 进行用户身份验证 最近 我向用户模型添加了两个新列 他们是first name and last name 然后 我使用这两个属性的字段更新了登录表单 但是 当我测试创建新用户时 两者都没
  • PHP 标头函数的替代方案

    我正在开发一个具有许多样式表的网站 所有这些样式表都需要作为 PHP 脚本服务器端进行处理 我的 htaccess文件看起来像这样
  • 使用 R 进行网页抓取:尽管在程序中使用了长时间暂停,但仍出现 HTTP 错误 503

    我正在尝试搜索ProQuest 存档器使用 R 我有兴趣查找包含特定关键字的报纸的文章数量 通常使用它效果很好rvest工具 然而 该程序有时会崩溃 看这个最小的例子 library xml2 library rvest Retrieve
  • 如何将 Data Fusion 连接到 Cloud SQL 代理

    我正在尝试使用私有 IP 将 Data Fusion 与 Cloud SQL MySQL 连接起来 我读过很多资源 似乎这是可能的 至少我仍然不相信这是不可能的 到目前为止我所拥有的 具有私有 IP 的 Data Fusion 私有实例 具
  • 将新输入的行与另一列值相乘并在 SQL 中查找总和

    我这里有 4 个表 我需要将表中新输入的行值与另一行相乘 并使用CustomerId 客户表 CustomerId Name EmailId 1 Paul email protected 2 John email protected 忠诚度
  • 将图表从 dojo 图表导出/转换为图像

    谁能告诉我是否可以将 dojo 图表对象转换为 mage 文件 我需要这个 因为我想从包含一些数据和表示图表的网页导出 Excel 文件 我唯一发现的是http dojotoolkit org reference guide dojox g
  • 使用 Jenkins DSL 插件进行稀疏结账?

    有谁有正确的代码示例 configure Jenkins DSL 插件中需要块来设置 git 稀疏结帐吗 config xml 部分看起来像这样
  • 适用于 Windows 的 CoffeeScript IDE - 尝试过 Titanium Studio 和 RubyMine

    我正在尝试找到一种在 Windows 上使用 CoffeeScript 的好方法 并且能够在 IDE 中将这些文件快速处理为 JavaScript RubyMine 如果我只是在 RubyMine 中打开一个 coffee 文件 这似乎可以
  • 在 UIPopover 内显示 UIDatePicker

    我正在使用以下代码来显示UIDatePicker在一个UIPopover当用户单击时显示UIButton 问题是 它显示在一个尴尬的位置 我想添加一个UIToolBar上面的datePicker有额外空间的地方 这将会有cancel and
  • 如何在 JavaFX Canvas 上禁用抗锯齿功能?

    目前我正在使用 JavaFX 开发一款 2D 游戏 该游戏是像素艺术的 不幸的是 由于抗锯齿 像素艺术变得模糊 有什么方法可以禁用 JavaFX 画布上的抗锯齿功能吗 我尝试过使用 SceneAntialiasing DISABLED 但它
  • Facade 和 Mediator 设计模式的区别?

    外观设计模式和中介设计模式有什么区别 我想了解在哪种情况下在这两种设计模式之间选择哪种设计模式 我浏览了以下链接 发现两者在用例方面都是相同的 立面设计模式 http www tutorialspoint com design patter
  • Java 使用 XStream 读取 XML

    我正在尝试使用 XStream 反序列化此 XML 文件 但收到此错误 Exception in thread main com thoughtworks xstream converters ConversionException Aut
  • 创建二维列表矩阵

    如何创建基于列表的矩阵1具有给定的行数和列数 例如 像 row 3 column 4 gt 1 1 1 1 1 1 1 1 1 1 1 1 这是使用列表理解的替代方法 让我们看一下基础知识 Prelude gt 2 x x lt 1 4 2
  • Asp.net MVC Razor如何显示两个模型字段的分组单选按钮

    我有一个简单的测验模型 我试图让用户从强类型视图中分组的两个单选按钮中选择正确答案 替代答案 但我使用的 lambda 表达式不起作用 我得到两个空白的单选按钮 我在这里和网上查看了几个问题 但我的模型是 IList 并且我找不到合适的示例