按属性实体框架4.1获取实体

时间:2012-11-04 11:01:13

标签: entity-framework-4.1

我想知道如何通过属性获取实体

我不想在传递实际SQL查询的地方使用SqlQuery方法。 Find()仅适用于PK值。

我希望能够在我的存储库中有一个方法,我可以传入一个具有相应值的属性字典来过滤我的实体。

public IList<TEntity> FindByProperties(IDictionary<string,object> propertyValues)

NHibernate提供条件查询api,EF中有类似的内容吗?

请建议。感谢

1 个答案:

答案 0 :(得分:0)

使用Entity Framework时,通常使用 lambda表达式来创建过滤条件。你可以有一个方法......

public IList<TEntity> FindByExpression(Expression<Func<TEntity, bool>> filter)
{
    return context.Set<TEntity>().Where(filter).ToList();
}

......并且这样称呼它:

...FindByExpression(t => t.Name == "Jim" && t.City == "Paris");