【问题标题】:Is there an equivalent for ActiveRecord#find_by equivalent for C#?是否有等效于 C# 的 ActiveRecord#find_by 等效项?
【发布时间】:2010-04-04 22:30:46
【问题描述】:

我最初是一名 C# 开发人员(作为一种爱好),但最近我一直在深入研究 Ruby on Rails 并非常喜欢它。现在我正在用 C# 构建一个应用程序,我想知道是否有任何 C# 集合实现可以匹配(或“半匹配”)ActiveRecord 的 find_by 方法。

我实际上在寻找的是一个包含Rectangles 的列表:

class Rectangle
{
    public int Width { get; set; }
    public int Height { get; set; }
    public string Name { get; set; }
}

我可以在其中查询此列表并找到带有Height = 10Width = 20name = "Block" 的所有条目。这是通过调用类似于Rectangle.find_by_name('Block') 的ActiveRecord 完成的。我能想到在 C# 中执行此操作的唯一方法是创建自己的列表实现并遍历每个项目,手动检查每个项目是否符合条件。我担心我会重新发明轮子(以及质量较差的轮子)。

我不一定要尝试匹配命名约定find_by_...,而是要具有该方法的功能。

非常感谢任何意见或建议。

【问题讨论】:

    标签: c# list activerecord collections


    【解决方案1】:

    .NET 3.5 中添加的“Linq 方法”,即 Where,与您正在寻找的非常接近。

    myCollection.Where(r => r.Name == 'Block')
    

    【讨论】:

    • 啊!太感谢了。这正是我一直在寻找的,但我不知道要搜索什么。
    猜你喜欢
    • 2016-05-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多