“处理不确定性” - 实体框架代码仅限

时间:2010-05-27 21:16:51

标签: orm entity-framework-4 code-first uncertainty

这有点奇怪,但我刚刚在推特上看到了一些令我困惑的事情,我很想知道更多。

几小时前

Rob Conery发布了以下内容:当天的班级名称:“Maybe<T>”。当天的方法:“ToMaybe<T>()”。然后,他继续向任何可以猜测它来自哪里的人提供Tekpub优惠券。他链接到另一条有线索的推文,并且我发现它只是实体框架代码,但在尝试确定其他人回答的用法时,Rob回复了 ... EF CodeOnly - 处理不确定性... 的。

所以我的问题归结为他所指的不确定性到底是什么?它如何适用于Entity Framework Code-Only?

2 个答案:

答案 0 :(得分:1)

Maybe<T>是典型的monad之一,例如this Wikipedia example。 Monads广泛用于函数式编程:你肯定知道IEnumerable<T>,它也是monad。 LINQ itelf有时被描述为“语言集成monad”。几个链接:

Maybe<T>的存在表明实体框架的代码质量绝对不错:他们在那里使用了众所周知的概念,described many many times(我怀疑那里)那里没有ToMaybe<T>() - 必须有ToMaybe<T>(T value)Nothing,所以这只是Rob的错误。)

答案 1 :(得分:0)

这仅仅是我的推测,但我猜它与处理具有任意表名,任意列名和任意查询的任意数据存储时必须处理的含糊不清有关。 / p>

我非常怀疑它以任何方式反映了实体框架的代码质量。