c# - 流利的 C# 有多远?

标签 c# coding-style fluent-interface

<分区>

public static class Th
{
    public static T e<T>(T theObject) where T : class
    {
        return theObject;
    }        
}

public static class ObjectExtensions
{
    public static bool Is<T>(this T o, Func<T, bool> a) where T : class
    {
        return a(o);
    }
}

//...

//logic in a method somewhere
Func<string, bool> valid = property => _myService.SomeValidationMethod(property);

if (Th.e(_request.Property).Is(valid))
{
   //do something
}

此代码适合生产吗?为什么?

编辑:感谢您的所有评论。我希望您在阅读我对 C# 语法的扩展到断点时获得了和阅读您的回复一样的乐趣。

最佳答案

我对流畅的 API 没有问题,但这似乎违反了最小惊喜原则。我不明白名为 Th 的类和名为 e 的方法的用途。

关于c# - 流利的 C# 有多远?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4856418/

相关文章:

c# - 拆分作为对象属性的字符串,从拆分的字符串创建新对象。有优雅的方法吗?

java - 使用空检查还是更喜欢空方法?

java - 通过服务器或通过 JavaScript 注入(inject) HTML 哪个更好?

c# - EF Code First - 来自数据库的对象为空

foreign-keys - EF FluentAPI 0..1 到 * 映射

c# - 如何使用 linq 替换字符串类型列表中的某些特定字符串?

c# - 新 Pane 添加到错误的选项卡组

java - getter 的良好命名约定

c# - 用于 Fluent Interface 的嵌套 Lambda

c# - 在不锁定文件的情况下加载程序集并保持正确的绑定(bind)上下文