我正在創建一個使用ActiveRecord作爲數據層的C#應用程序。我創建了一個名爲UserGrabber的業務類,它應該通過使用它的屬性將過濾器發送到ActiveRecord.Find方法來查找用戶。ActiveRecord在查找方法中創建動態條件
例如一個用戶類。客戶需要找到有活動目錄名稱以「安娜」,用含4229. SSN所有用戶,那麼我願做
UserGrabber grabber = new UserGrabber();
grabber.ADName = "anna";
grabber.SSN = "4229";
grabber.Grab();
foreach(User user in grabber.Users)
{
Console.WriteLine(user.FullName);
}
訣竅是,我沒有將信息發送到UserGrabber除非我想按照它過濾,否則我可以只發送grabber.ADName,然後SSN不會被過濾。
問題是我似乎無法理解如何在ActiveRecord中執行此操作。也許我可以使用ExecuteQuery(Castle.ActiveRecord.IActiveRecordQuery)或FindAll(NHibernate.Criterion.ICriterion)?