4

我正在尝试创建我的第一个流畅的界面,我只是想知道其他人认为哪个更流畅,他们更喜欢使用哪个?

Check.Field().Named("est").WithValueOf("sdsd").IsNotNull()

Check.Field("est").WithValueOf("sdsd").IsNotNull()

Check.Field("est").WithValue("sdsd").IsNotNull()

干杯安东尼

4

5 回答 5

4

最后一个肯定:

Check.Field("est").WithValue("sdsd").IsNotNull()
于 2009-07-14T02:28:32.397 回答
3

我同意:

Check.Field("est").WithValue("sdsd").IsNotNull()

尽可能短,同时仍然有意义。

避免使用噪音词,.as. .of. .and. .in.除非它们添加上下文含义。我见过流畅的界面可以做到这一点,除了更多的打字和更多的箍让应用程序在执行时跳过之外,它没有增加任何有用的东西。

于 2009-07-14T02:32:08.863 回答
0

或者,为了模仿某些集合,使用Item 属性

Check["est"].WithValue("sdsd").IsNotNull()

有些人可能还会说您应该只使用 .IsNull() 并否定整个表达式,就像这样,但这是“六个 - 对 - 六个”的事情:

!Check["est"].WithValue("sdsd").IsNull()
于 2009-07-14T02:35:08.610 回答
0

另一种选择可能是:

Check.Field("est").IsNotNull("sdsd")

像 LINQ 的 FirstOrDefault 之类的东西是用谓词调用的,而不是过滤然后调用 FirstOrDefault。

于 2009-07-14T02:35:21.167 回答
0

是什么Check?我怀疑它根本不需要。我了解您要执行的操作,但请记住,您尝试构建的表达式仍可能以 if 语句结尾。考虑到这一点,想想“if check X”的读法。不太好,恕我直言。此外,“字段”函数必须做什么才能解析该名称?您是否有其他地方可以以更好的方式呈现(也许是某些基本类型的扩展方法?)

于 2009-07-14T02:43:27.490 回答