예제 #1
0
        public void Delete(ProjectDataCriteria criteria)
        {
            var data = MockDb.Projects
                .Where(row => row.ProjectId == criteria.ProjectId)
                .Single();

            MockDb.Projects.Remove(data);
        }
예제 #2
0
        public void Delete(ProjectDataCriteria criteria)
        {
            var data = MockDb.Projects
                       .Where(row => row.ProjectId == criteria.ProjectId)
                       .Single();

            MockDb.Projects.Remove(data);
        }
        public static ProjectInfoList ProjectFetchInfoList(ProjectDataCriteria criteria)
        {
            // this will ensure that users can only view projects that they are assigned to
            criteria.UserId =
                ((IBusinessIdentity)Csla.ApplicationContext.User.Identity).UserId;

            return(ProjectInfoList.FetchProjectInfoList(criteria));
        }
예제 #4
0
        public static ProjectInfoList ProjectFetchInfoList(ProjectDataCriteria criteria)
        {
            // this will ensure that users can only view projects that they are assigned to
            criteria.UserId =
                ((IBusinessIdentity)Csla.ApplicationContext.User.Identity).UserId;

            return ProjectInfoList.FetchProjectInfoList(criteria);
        }
예제 #5
0
        public ProjectData[] FetchLookupInfoList(ProjectDataCriteria criteria)
        {
            var query = MockDb.Projects
                        .AsQueryable();

            var data = query.AsQueryable();

            return(data.ToArray());
        }
예제 #6
0
        public ProjectData[] FetchLookupInfoList(ProjectDataCriteria criteria)
        {
            var query = MockDb.Projects
                .AsQueryable();

            var data = query.AsQueryable();

            return data.ToArray();
        }
예제 #7
0
        private void DataPortal_Delete(ProjectDataCriteria criteria)
        {
            using (var dalManager = DataFactoryManager.GetManager())
            {
                var dalFactory = dalManager.GetProvider <IProjectDataFactory>();

                dalFactory.Delete(criteria);
            }
        }
예제 #8
0
        public ProjectData Fetch(ProjectDataCriteria criteria)
        {
            var data = MockDb.Projects
                       .Where(row => row.ProjectId == criteria.ProjectId)
                       .Single();

            data = this.Fetch(data);

            return(data);
        }
예제 #9
0
        public ProjectData Fetch(ProjectDataCriteria criteria)
        {
            var data = MockDb.Projects
                .Where(row => row.ProjectId == criteria.ProjectId)
                .Single();

            data = this.Fetch(data);

            return data;
        }
예제 #10
0
        public void Delete(ProjectDataCriteria criteria)
        {
            using (var ctx = Csla.Data.ObjectContextManager<ApplicationEntities>
                          .GetManager(Database.ApplicationConnection, false))
            {
                var project = this.Fetch(ctx, criteria)
                    .Single();

                ctx.ObjectContext.Projects.DeleteObject(project);

                ctx.ObjectContext.SaveChanges();
            }
        }
예제 #11
0
        public void Delete(ProjectDataCriteria criteria)
        {
            using (var ctx = Csla.Data.ObjectContextManager <ApplicationEntities>
                             .GetManager(Database.ApplicationConnection, false))
            {
                var project = this.Fetch(ctx, criteria)
                              .Single();

                ctx.ObjectContext.Projects.DeleteObject(project);

                ctx.ObjectContext.SaveChanges();
            }
        }
예제 #12
0
        public ProjectData Fetch(ProjectDataCriteria criteria)
        {
            using (var ctx = Csla.Data.ObjectContextManager<ApplicationEntities>
                         .GetManager(Database.ApplicationConnection, false))
            {
                var project = this.Fetch(ctx, criteria)
                    .Single();

                var projectData = new ProjectData();

                this.Fetch(project, projectData);

                return projectData;
            }
        }
예제 #13
0
        public ProjectData Fetch(ProjectDataCriteria criteria)
        {
            using (var ctx = Csla.Data.ObjectContextManager <ApplicationEntities>
                             .GetManager(Database.ApplicationConnection, false))
            {
                var project = this.Fetch(ctx, criteria)
                              .Single();

                var projectData = new ProjectData();

                this.Fetch(project, projectData);

                return(projectData);
            }
        }
예제 #14
0
        private void DataPortal_Fetch(ProjectDataCriteria criteria)
        {
            using (var dalManager = DataFactoryManager.GetManager())
            {
                var dalFactory = dalManager.GetProvider <IProjectDataFactory>();

                var data = dalFactory.Fetch(criteria);

                using (this.BypassPropertyChecks)
                {
                    this.Fetch(data);
                }

                // this.ChildPropertyName = Csla.DataPortal.FetchChild<ChildPropertType>(data);
            }
        }
예제 #15
0
        public ProjectData[] FetchInfoList(ProjectDataCriteria criteria)
        {
            var query = MockDb.Projects
                        .AsQueryable();

            var projects = query.AsQueryable();

            var data = new List <ProjectData>();

            foreach (var project in projects)
            {
                data.Add(this.Fetch(project));
            }

            return(data.ToArray());
        }
예제 #16
0
        public ProjectData[] FetchInfoList(ProjectDataCriteria criteria)
        {
            var query = MockDb.Projects
                .AsQueryable();

            var projects = query.AsQueryable();

            var data = new List<ProjectData>();

            foreach (var project in projects)
            {
                data.Add(this.Fetch(project));
            }

            return data.ToArray();
        }
        private void DataPortal_Fetch(ProjectDataCriteria criteria)
        {
            using (var dalManager = DataFactoryManager.GetManager())
            {
                var dalFactory = dalManager.GetProvider <IProjectDataFactory>();

                var data = dalFactory.FetchInfoList(criteria);

                this.RaiseListChangedEvents = false;
                this.IsReadOnly             = false;

                this.AddRange(data.Select(row => Csla.DataPortal.FetchChild <ProjectInfo>(row)));

                this.IsReadOnly             = true;
                this.RaiseListChangedEvents = true;
            }
        }
예제 #18
0
        private void DataPortal_Fetch(ProjectDataCriteria criteria)
        {
            using (var dalManager = DataFactoryManager.GetManager())
            {
                var dalFactory = dalManager.GetProvider<IProjectDataFactory>();

                var data = dalFactory.FetchInfoList(criteria);

                this.RaiseListChangedEvents = false;
                this.IsReadOnly = false;

                this.AddRange(data.Select(row => Csla.DataPortal.FetchChild<ProjectInfo>(row)));

                this.IsReadOnly = true;
                this.RaiseListChangedEvents = true;
            }
        }
예제 #19
0
        public ProjectData[] FetchLookupInfoList(ProjectDataCriteria criteria)
        {
            using (var ctx = Csla.Data.ObjectContextManager <ApplicationEntities>
                             .GetManager(Database.ApplicationConnection, false))
            {
                var projects = this.Fetch(ctx, criteria)
                               .AsEnumerable();

                var projectDataList = new List <ProjectData>();

                foreach (var project in projects)
                {
                    var projectData = new ProjectData();

                    this.Fetch(project, projectData);

                    projectDataList.Add(projectData);
                }

                return(projectDataList.ToArray());
            }
        }
예제 #20
0
        public ProjectData[] FetchLookupInfoList(ProjectDataCriteria criteria)
        {
            using (var ctx = Csla.Data.ObjectContextManager<ApplicationEntities>
                          .GetManager(Database.ApplicationConnection, false))
            {
                var projects = this.Fetch(ctx, criteria)
                    .AsEnumerable();

                var projectDataList = new List<ProjectData>();

                foreach (var project in projects)
                {
                    var projectData = new ProjectData();

                    this.Fetch(project, projectData);

                    projectDataList.Add(projectData);
                }

                return projectDataList.ToArray();
            }
        }
예제 #21
0
        public ActionResult Index(
            string createdDate,
            string isActive,
            string isArchived,
            string modifiedDate,
            string projectName)
        {
            var model    = new ProjectListModel();
            var criteria =
                new ProjectDataCriteria
            {
                CreatedDate  = CriteriaHelper.ToDateRangeCriteria(createdDate),
                IsActive     = CriteriaHelper.ToBoolean(isActive),
                IsArchived   = CriteriaHelper.ToBoolean(isArchived),
                Name         = projectName,
                ModifiedDate = CriteriaHelper.ToDateRangeCriteria(modifiedDate)
            };
            var projects = ProjectRepository.ProjectFetchInfoList(criteria);

            model.Projects = projects;

            var stories = StoryRepository.StoryFetchInfoList(projects.ToArray(), false);

            model.Stories = stories;

            var timelines = TimelineRepository.TimelineFetchInfoList(
                projects.Select(row => row.ProjectId).Distinct().ToArray(), SourceType.Project);

            model.Timelines = timelines;

            var sprints = SprintRepository.SprintFetchInfoList(projects.ToArray(), false);

            model.Sprints = sprints;

            model.Actions.Add("Add a project", Url.Action("Create"), "primary");

            return(this.View(model));
        }
예제 #22
0
        private IQueryable <Project> Fetch(
            Csla.Data.ObjectContextManager <ApplicationEntities> ctx,
            ProjectDataCriteria criteria)
        {
            IQueryable <Project> query = ctx.ObjectContext.Projects
                                         .Include("CreatedByUser")
                                         .Include("ModifiedByUser");

            if (criteria.ProjectId != null)
            {
                query = query.Where(row => row.ProjectId == criteria.ProjectId);
            }

            if (criteria.Description != null)
            {
                query = query.Where(row => row.Description == criteria.Description);
            }

            if (criteria.IsActive != null)
            {
                query = query.Where(row => row.IsActive == criteria.IsActive);
            }

            if (criteria.IsArchived != null)
            {
                query = query.Where(row => row.IsArchived == criteria.IsArchived);
            }

            if (criteria.Name != null)
            {
                query = query.Where(row => row.Name == criteria.Name);
            }

            if (criteria.UserId != null)
            {
                query = query.Join(
                    ctx.ObjectContext.ProjectUserMembers.Where(pum => pum.UserId == criteria.UserId),
                    p => p.ProjectId,
                    pum => pum.ProjectId,
                    (p, pum) => p);
            }

            if (criteria.CreatedBy != null)
            {
                query = query.Where(row => row.CreatedBy == criteria.CreatedBy);
            }

            if (criteria.CreatedDate != null &&
                criteria.CreatedDate.DateFrom.Date != DateTime.MinValue.Date)
            {
                query = query.Where(row => row.CreatedDate >= criteria.CreatedDate.DateFrom);
            }

            if (criteria.CreatedDate != null &&
                criteria.CreatedDate.DateTo.Date != DateTime.MaxValue.Date)
            {
                query = query.Where(row => row.CreatedDate <= criteria.CreatedDate.DateTo);
            }

            if (criteria.ModifiedBy != null)
            {
                query = query.Where(row => row.ModifiedBy == criteria.ModifiedBy);
            }

            if (criteria.ModifiedDate != null &&
                criteria.ModifiedDate.DateFrom.Date != DateTime.MinValue.Date)
            {
                query = query.Where(row => row.ModifiedDate >= criteria.ModifiedDate.DateFrom);
            }

            if (criteria.ModifiedDate != null &&
                criteria.ModifiedDate.DateTo.Date != DateTime.MaxValue.Date)
            {
                query = query.Where(row => row.ModifiedDate <= criteria.ModifiedDate.DateTo);
            }

            if (criteria.Text != null)
            {
                query = query.Where(row => row.Name.Contains(criteria.Text));
            }

            if (criteria.SortBy != null)
            {
                query = query.OrderBy(string.Format(
                                          "{0} {1}",
                                          criteria.SortBy,
                                          criteria.SortOrder == ListSortDirection.Ascending ? "ASC" : "DESC"));
            }

            if (criteria.SkipRecords != null)
            {
                query = query.Skip(criteria.SkipRecords.Value);
            }

            if (criteria.MaximumRecords != null)
            {
                query = query.Take(criteria.MaximumRecords.Value);
            }

            return(query);
        }
예제 #23
0
        public ActionResult Index(
            string createdDate,
            string isActive,
            string isArchived,
            string modifiedDate,
            string projectName)
        {
            var model = new ProjectListModel();
            var criteria =
                new ProjectDataCriteria
                    {
                        CreatedDate = CriteriaHelper.ToDateRangeCriteria(createdDate),
                        IsActive = CriteriaHelper.ToBoolean(isActive),
                        IsArchived = CriteriaHelper.ToBoolean(isArchived),
                        Name = projectName,
                        ModifiedDate = CriteriaHelper.ToDateRangeCriteria(modifiedDate)
                    };
            var projects = ProjectRepository.ProjectFetchInfoList(criteria);

            model.Projects = projects;

            var stories = StoryRepository.StoryFetchInfoList(projects.ToArray(), false);

            model.Stories = stories;

            var timelines = TimelineRepository.TimelineFetchInfoList(
                projects.Select(row => row.ProjectId).Distinct().ToArray(), SourceType.Project);

            model.Timelines = timelines;

            var sprints = SprintRepository.SprintFetchInfoList(projects.ToArray(), false);

            model.Sprints = sprints;

            model.Actions.Add("Add a project", Url.Action("Create"), "primary");

            return this.View(model);
        }
예제 #24
0
        private void DataPortal_Delete(ProjectDataCriteria criteria)
        {
            using (var dalManager = DataFactoryManager.GetManager())
            {
                var dalFactory = dalManager.GetProvider<IProjectDataFactory>();

                dalFactory.Delete(criteria);
            }
        }
예제 #25
0
        private void DataPortal_Fetch(ProjectDataCriteria criteria)
        {
            using (var dalManager = DataFactoryManager.GetManager())
            {
                var dalFactory = dalManager.GetProvider<IProjectDataFactory>();

                var data = dalFactory.Fetch(criteria);

                using (this.BypassPropertyChecks)
                {
                    this.Fetch(data);
                }

                // this.ChildPropertyName = Csla.DataPortal.FetchChild<ChildPropertType>(data);
            }
        }
예제 #26
0
 internal static Project FetchProject(ProjectDataCriteria criteria)
 {
     return(Csla.DataPortal.Fetch <Project>(criteria));
 }
예제 #27
0
 internal static void DeleteProject(ProjectDataCriteria criteria)
 {
     Csla.DataPortal.Delete <Project>(criteria);
 }
예제 #28
0
        private IQueryable<Project> Fetch(
             Csla.Data.ObjectContextManager<ApplicationEntities> ctx,
             ProjectDataCriteria criteria)
        {
            IQueryable<Project> query = ctx.ObjectContext.Projects
                .Include("CreatedByUser")
                .Include("ModifiedByUser");

            if (criteria.ProjectId != null)
            {
                query = query.Where(row => row.ProjectId == criteria.ProjectId);
            }

            if (criteria.Description != null)
            {
                query = query.Where(row => row.Description == criteria.Description);
            }

            if (criteria.IsActive != null)
            {
                query = query.Where(row => row.IsActive == criteria.IsActive);
            }

            if (criteria.IsArchived != null)
            {
                query = query.Where(row => row.IsArchived == criteria.IsArchived);
            }

            if (criteria.Name != null)
            {
                query = query.Where(row => row.Name == criteria.Name);
            }

            if (criteria.UserId != null)
            {
                query = query.Join(
                    ctx.ObjectContext.ProjectUserMembers.Where(pum => pum.UserId == criteria.UserId),
                    p => p.ProjectId,
                    pum => pum.ProjectId,
                    (p, pum) => p);
            }

            if (criteria.CreatedBy != null)
            {
                query = query.Where(row => row.CreatedBy == criteria.CreatedBy);
            }

            if (criteria.CreatedDate != null
                && criteria.CreatedDate.DateFrom.Date != DateTime.MinValue.Date)
            {
                query = query.Where(row => row.CreatedDate >= criteria.CreatedDate.DateFrom);
            }

            if (criteria.CreatedDate != null
                && criteria.CreatedDate.DateTo.Date != DateTime.MaxValue.Date)
            {
                query = query.Where(row => row.CreatedDate <= criteria.CreatedDate.DateTo);
            }

            if (criteria.ModifiedBy != null)
            {
                query = query.Where(row => row.ModifiedBy == criteria.ModifiedBy);
            }

            if (criteria.ModifiedDate != null
                && criteria.ModifiedDate.DateFrom.Date != DateTime.MinValue.Date)
            {
                query = query.Where(row => row.ModifiedDate >= criteria.ModifiedDate.DateFrom);
            }

            if (criteria.ModifiedDate != null
                && criteria.ModifiedDate.DateTo.Date != DateTime.MaxValue.Date)
            {
                query = query.Where(row => row.ModifiedDate <= criteria.ModifiedDate.DateTo);
            }

            if (criteria.Text != null)
            {
                query = query.Where(row => row.Name.Contains(criteria.Text));
            }

            if (criteria.SortBy != null)
            {
                query = query.OrderBy(string.Format(
                    "{0} {1}",
                    criteria.SortBy,
                    criteria.SortOrder == ListSortDirection.Ascending ? "ASC" : "DESC"));
            }

            if (criteria.SkipRecords != null)
            {
                query = query.Skip(criteria.SkipRecords.Value);
            }

            if (criteria.MaximumRecords != null)
            {
                query = query.Take(criteria.MaximumRecords.Value);
            }

            return query;
        }
예제 #29
0
 internal static Project FetchProject(ProjectDataCriteria criteria)
 {
     return Csla.DataPortal.Fetch<Project>(criteria);
 }
예제 #30
0
 internal static void DeleteProject(ProjectDataCriteria criteria)
 {
     Csla.DataPortal.Delete<Project>(criteria);
 }