2012-11-04 90 views
0

我想知道如何通過屬性獲取實體獲取實體的屬性實體框架4.1

我不想在傳遞實際SQL查詢的地方使用SqlQuery方法。 Find()僅適用於PK值。

我希望能夠在我的存儲庫中有一個方法,我可以傳遞屬性字典中的相應值來過濾我的實體。

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

NHibernate提供標準查詢api,有什麼類似的EF?

請建議。謝謝

回答

0

使用實體框架通常使用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");