我必须用以下问题来代表调查:
研究这些问题组后,我发现了以下规则:
你觉得这些条件OK吗?
有了这些必需品,我设计了以下概念模型(这里我称之为表格而不是调查):
我需要使调查动态。我将重复使用一组问题、问题和/或选项。
小智 2
我提供了一个来自实际解决方案的更完整的模型。
“类型”与问题本身相关(而不是与其项目相关联,如问题第四项所述)。
一个问题可以是单行或多行文本框,也可以是由多个项目组成。对于每个项目,可以分配一个补充问题(例如“国家/地区?”-“其他”-“哪个:___”)。
如何向用户呈现问题及其项目取决于其类型。
该模型足够灵活,可以表示问题的多种结构。
“FormQuestionType”实体有一个属性来标识负责呈现此类型问题的 ASCX(ASP.net 组件)。
可以使一个问题依赖于一个或多个先前的问题(例如,“有多少个孩子?”可以依赖于“你有孩子吗?”)。
有数据验证的预置,从“必需”约束到正则表达式。
对于每个主要实体,都定义了名为“identification”的强制且唯一的属性,允许基于文本代码而不是数字 ID 进行查询(例如,ID“351”的“多少个孩子?”问题也由“HOW_MANY_CHILDREN”标识')。
并且,对于给定问题的项目,可以定义外部数据源(例如,“城市”问题的选项是从公司“城市”表中实时检索的)。
实际模型提供版本控制,但为了清楚起见,我提供了它的精简版本。
归档时间: |
|
查看次数: |
5426 次 |
最近记录: |