|
2
|
| harriyott Erik Funkenbusch · 技术社区 · 16 年前 |
|
|
1
4
我认为将问题和答案子类化是一个很好的计划——去掉问题类型enum。 然后您就可以有一个MakeAnswer(string)抽象方法来解决这个问题,它为您封装了很多逻辑,并且可以在必要时进行类型转换等。 我对一般问题的解决方法 Rob's answer 可能是这样的:
在哪里?
DateTimeAnswer如下所示:
DateTimeQuestion可能看起来像:
这样,您的答案可以以自己的方式保存值,并且您可以指定它在数据库中的外观(我建议使用鉴别器进行映射)。您的问题可以负责从一般响应创建答案。 |
|
|
2
1
有趣的问题。。 我的意见/想法:
我会按照这样的思路思考:
全部 可能只是显示答案。。我们通过泛型的方式添加了类型安全性,这样我们就可以确保在没有类型参数的情况下不能创建新的响应。。 然后我们就可以非常确定,我们所实现的答案的类型是有限的。NHib应该没有真正的问题,因为它知道自己需要什么。
虽然很糟糕,但我们有
|
|
|
3
-1
将答案存储在完整的数据模型中真的有意义吗?你要拿他们干什么? 最可能的候选者似乎是报告,在这种情况下,您可能需要研究CQRS(命令查询责任分离)样式。相反,您将有一个QuestionnaireCompletedCommand,它将包含一个答案列表,然后您将以某种方式保留这些答案,以便可以对它们运行报告。 当您有业务逻辑(您可能有)时,数据模型是很好的,但是如果您没有任何业务逻辑,您可能只是不必要地使解决方案复杂化。说到复杂化,当我说看cqr时,我并不一定是指事件来源部分。这是一个非常复杂的问题,很少有人需要。 |
|
EarthTurtle · 调整泛型抛出迭代器的异常类型 1 年前 |
|
wallop · 实现必须明确提及所有接口字段,还是可以跳过它们? 2 年前 |
|
|
Reelie · C#11-通过抽象类在接口中静态抽象成员? 2 年前 |
|
Addem · 在OCaml签名中放入类型声明的正确方法是什么 2 年前 |