Esempio n. 1
0
        public EmployeeListViewModel(IRepository <Employee> repository, bool largeMode, IOperationTimer operationTimer)
        {
            timer = operationTimer.Begin("Employee view model");

            this.repository     = repository;
            this.operationTimer = operationTimer;

            if (largeMode)
            {
                const int maxSize    = 10000;
                var       largeList  = new List <Employee>(maxSize);
                var       collection = this.repository.GetAll().ToArray();

                for (int i = 0; i < maxSize / 500; i++)
                {
                    largeList.AddRange(collection);
                }

                this.employees = new ObservableCollection <Employee>(largeList);
            }
            else
            {
                this.employees = new ObservableCollection <Employee>(this.repository.GetAll());
            }

            timer.End(timer);
            Debug.WriteLine(timer);
        }