我为一个为发育障碍者提供日间计划服务的组织工作。在每天结束时,工作人员会为他们所工作的人填写每日日志,以记录当天的情况。此信息输入Excel电子表格,以便我们定期报告(即每季度)。我想将这些数据从Excel移动到数据库驱动的网站。我正在使用(我去的时候学习)ASP.Net MVC,但我的问题更为笼统。
每个日常日志都是为每个服务对象定制的;所有程序都是独一无二的(因此每个人目前都有自己的电子表格)。此外,当一个人的程序发生变化时,日志表上的字段(或问题)可以随时间变化。我目前正在尝试决定如何处理域/对象模型,特别是查看问题/答案对的字典类型,但所有答案的数据类型都不相同。我正在考虑使用Dictionary(字符串,对象)或Dictionary(字符串,动态)(如果可能的话)。
无论如何,我开始学习模式,我认为有一种或多种模式可能是最好的方式;我希望有人可以指出我认为可能适合的特定模式。
提前致谢..
答案 0 :(得分:1)
一个问题实际上只是一块文字询问某些东西,所以我不会直接将它与你的答案结合起来。答案是什么可以是“T型”,所以我会使用泛型:
class Question
{
String Text { get; set; }
}
class Answer<T>
{
T _Answer;
Question QuestionReference { get; set; }
T Answer
{
get { return _Answer; }
set { if (value is T) _Answer = value; }
}
}
您的数据库将包含一堆Question实体,您将使用一些业务逻辑来决定为每个人提出哪些问题,然后您将为每个问题创建新的Answer<T>
,其中T是回答的回复类型。您还可以在答案类型上添加验证,并且可以将Question
子类化为多项选择,其中问题需要知道要显示的潜在答案。
有很多方法可以表示这种类型的数据;最后选择对你来说最舒服的东西。