受http://huyrua.wordpress.com/2010/08/25/specification-pattern-in-entity-framework-4-revisited的啓發,我決定寫規範的所有非平凡查詢。 但у遇到的,我不知道如何在幾個函數使用一個規範的問題:存儲庫的規範模式?
public bool CheckAccountEmailExist(string email)
{
var emailExistSpec = new Specification(a => a.Email.ToUpper() == email.ToUpper());
return _accountRepository.GetBy(emailExistSpec).Any();
}
public bool CheckAccountEmailExist(string email, Guid exceptAccountId)
{
var emailExistSpec = new Specification(a => a.Email.ToUpper() == email.ToUpper());
var exceptAccountSpec = new Specification(a => a.Id != exceptAccountId);
return _accountRepository.GetBy(emailExistSpec.And(exceptAccountSpec)).Any();
}
我想提取規範「A => a.Email.ToUpper()== email.ToUpper() 「在兩個函數中使用它,但我應該用」email「(函數參數)對它進行參數化。我怎樣才能做到這一點?