برای فعال و غیر فعال نمودن فیلترهای انجام داده شده ، میتوان متد هایی را برای این منظور نوشت ، همانند :
تعریف امضای متدها در uow :
و پیاده سازی به صورت :
برای نمونه ،
تعریف امضای متدها در uow :
void SetDisableFilter(FilterColumn type); void SetEnableFilter(FilterColumn type);
و پیاده سازی به صورت :
public void SetDisableFilter(FilterColumn type) { switch (type) { case FilterColumn.SoftDelete: this.DisableFilter("IsDeleted"); break; } } public void SetEnableFilter(FilterColumn type) { switch (type) { case FilterColumn.SoftDelete: this.EnableFilter("IsDeleted"); break; } }
public IEnumerable<MyVM> GetAll() { total = GetCount(); return _db.Where(filter).ToList(); } public int GetCount() { _uow.SetDisableFilter(Common.FilterColumn.SoftDelete); int count =_expertises.Count(); _uow.SetEnableFilter(Common.FilterColumn.SoftDelete);
return count; }