【发布时间】:2018-03-22 19:10:30
【问题描述】:
首先:我不能在标题中使用单词:question,所以我使用了表单域。
请耐心回答我的问题/解释我已经拥有什么与我需要什么:
我需要什么:能够从数据库中动态提取第一组问题,然后根据第一组问题的答案进行回答,然后根据第一组问题的答案显示第二组问题问题(根据对第二组问题的回答,将显示不同的第三组问题)等等(级别数未设置并且是动态的/可以更改)。
我已经拥有:一个带有类和 SQL DB 后端的 C# ASP.NET Web 应用程序。表单上的编程需要一组问题,这些问题被分组在一起,并基于传递给表单的分组,它从数据库中提取动态问题(和可能的答案)(可以有许多不同的问题/答案组和表单chagnes 基于该分组的问题)并在屏幕上显示问题。它还提取问题所需的表单字段类型(文本框、选择、复选框、单选等),并动态构建表单字段,并在需要时为选择/复选框/单选选项添加选项,并为表单添加验证。然后,当用户提交表单时,它会将答案保存到数据库中,并且还可以动态检索分析器。
我也有能力/逻辑让问题具有父/子关系(没有固定级别的父/子关系的动态)。
我需要的是:要能够使用上面的逻辑/数据库结构,但要显示一组问题,然后根据第一组问题的答案,更改显示的第二组问题。
我可以使用 if/else 和 case 语句轻松地对逻辑进行硬编码,但我需要它是动态的,我想从问题/答案中分离出逻辑/代码,以便我可以轻松添加/删除/更新问题树而不更新任何代码只是数据。
例如:所以问题 1、2、3 显示在第一个表单上。用户回答 1:A、2:A、3:B。根据这些答案显示问题 4、5、9。如果他们回答 1:B、2:A、3:C,则显示问题 4、7、9。此外,某些问题的答案可能不会对显示的下一组答案产生影响。此外,我可能在数据库中存储了一个问题,该问题可以出现在一组问题的第 1 级,但嵌套在第二组问题的第 4 级。所有这些都需要从数据库中动态提取。
我已经拥有了我需要的大部分代码/逻辑/功能,我只需要扩展我已经拥有的内容以允许我想要拥有的这些附加/新功能集。
【问题讨论】:
标签: c# sql parent-child question-answering