示例#1
0
 /// <summary>
 /// Initializes static members of the <see cref="TestBase"/> class.
 /// </summary>
 static TestBase()
 {
     QueryOverExtension.SetFilterStrategyFactory(new FilterStrategyFactory());
     RxExtension.UiSafeScheduler = Scheduler.Default;
     new ProfilesLauncher().LoadProfiles();
     new ConfigureWorkflow().LoadProfiles(null);
 }
示例#2
0
        protected ServiceBase(
            IRepositoryFactory repositoryFactory,
            IFilterStrategyFactory filterStrategyFactory)
        {
            if (repositoryFactory == null)
            {
                throw new ArgumentNullException("repositoryFactory");
            }

            if (filterStrategyFactory == null)
            {
                throw new ArgumentNullException("filterStrategyFactory");
            }

            RepositoryFactory = repositoryFactory;
            QueryOverExtension.SetFilterStrategyFactory(filterStrategyFactory);
        }
示例#3
0
        public IList <IDto> Filtering(Type type, IUserFilter filter)
        {
            Type    entityType = BusinessRelation.Instance.TryGetRelation(type) ?? type;
            dynamic repository = RepositoryFactory.InvokeGenericMethod <object>(entityType, "Create");

            var queryOver         = repository.Specify();
            var filteredQueryOver = QueryOverExtension.Filtering(queryOver, filter).Take(MAX_COUNT_LOADING_ROWS);

            var entities = (IList)filteredQueryOver.List();

            if (entityType.HasInterface <IDto>())
            {
                return(entities.Cast <IDto>().ToList());
            }

            var result = (from object item in entities select(IDto) item.MapTo(type)).ToList();

            return(result);
        }