public override EventResult <EnterpriseResourceCollection> Execute()
        {
            EventResult <EnterpriseResourceCollection> result = new EventResult <EnterpriseResourceCollection>();
            int i = 0;

            for (i = 0; i < Param.Form.MaxResource; i++)
            {
                foreach (ResourceDTO resouceDto in resourceTestInfo)
                {
                    EnterpriseResourceCreationInformation res = new EnterpriseResourceCreationInformation();
                    res.Name = resouceDto.Name + i.ToString();
                    res.Id   = Guid.NewGuid();
                    Param.Util.ProjContext.EnterpriseResources.Add(res);
                }
            }

            if (Param.Form.AdditionalCount != 0)
            {
                CreateAdditionalResource(Param);
            }
            Param.Util.ProjContext.EnterpriseResources.Update();
            Param.Util.ProjContext.ExecuteQuery();
            result.Result = Param.Util.ProjContext.EnterpriseResources;
            return(result);
        }
        private void CreateAdditionalResource(EventParameter Param)
        {
            int idx = 0;

            foreach (ResourceDTO resouceDto in resourceTestInfo)
            {
                if (Param.Form.AdditionalCount == idx)
                {
                    break;
                }

                EnterpriseResourceCreationInformation res = new EnterpriseResourceCreationInformation();
                res.Name = resouceDto.Name;
                res.Id   = Guid.NewGuid();
                Param.Util.ProjContext.EnterpriseResources.Add(res);
                idx++;
            }
        }
        public bool Create(ResourcePoolModel model)
        {
            if (model == null)
            {
                throw new ArgumentException("The ResourcePoolModel is null.");
            }
            else
            {
                IEnumerable <EnterpriseResource> resources = GetEntities();
                for (int i = 0; i < model.Count; i++)
                {
                    string resourceName = model.NamePrefix + i.ToString();
                    if (resources.Any(item => item.Name == resourceName && item.ResourceType.ToString().ToLower() == model.Type.ToLower()))
                    {
                        // No need to do anything currently
                    }
                    else
                    {
                        EnterpriseResourceCreationInformation resourceInfo = new EnterpriseResourceCreationInformation()
                        {
                            Name         = resourceName,
                            ResourceType = model.Type.ConvertToResourceType()
                        };

                        EnterpriseResource resource = BaseProjectContext.EnterpriseResources.Add(resourceInfo);
                        int executePoint            = 1000;
                        if (i % executePoint == 0 || i == model.Count - 1)
                        {
                            ExcuteJobWithRetries(() =>
                            {
                                LoggerHelper.Instance.Comment("About to Create Resource with Name: " + resourceInfo.Name);
                                BaseProjectContext.EnterpriseResources.Update();
                                BaseProjectContext.ExecuteQuery();
                                LoggerHelper.Instance.Comment("Finish Creating Resource with Name: " + resourceInfo.Name);
                            },
                                                 "Create Resource");
                        }
                    }
                }
                BaseProjectContext.ExecuteQuery();
            }
            return(true);
        }
 private void CreateResources()
 {
     EnterpriseResourceType selectedEnterpriseResourceType = EnterpriseResourceType.Work;
     cbxResType.InvokeIfRequired(s => selectedEnterpriseResourceType = (EnterpriseResourceType)cbxResType.SelectedValue);
     for (int resourceCount = 1; resourceCount <= numResources.Value; resourceCount++)
     {
         EnterpriseResourceCreationInformation erCi = new EnterpriseResourceCreationInformation
         {
             Name = txtResourceName.Text + resourceCount,
             IsInactive = CB_Inactive.Checked,
             IsGeneric = CB_Generic.Checked,
             IsBudget = CB_Budget.Checked,
             ResourceType = selectedEnterpriseResourceType
         };
         Log.WriteVerbose(new SourceInfo(), TB_Status, "Creating Resource with name {0}", erCi.Name);
         ProjContext.EnterpriseResources.Add(erCi);
     }
     ProjContext.EnterpriseResources.Update();
     ProjContext.ExecuteQuery();
 }
        private void CreateResources()
        {
            EnterpriseResourceType selectedEnterpriseResourceType = EnterpriseResourceType.Work;

            cbxResType.InvokeIfRequired(s => selectedEnterpriseResourceType = (EnterpriseResourceType)cbxResType.SelectedValue);
            for (int resourceCount = 1; resourceCount <= numResources.Value; resourceCount++)
            {
                EnterpriseResourceCreationInformation erCi = new EnterpriseResourceCreationInformation
                {
                    Name         = txtResourceName.Text + resourceCount,
                    IsInactive   = CB_Inactive.Checked,
                    IsGeneric    = CB_Generic.Checked,
                    IsBudget     = CB_Budget.Checked,
                    ResourceType = selectedEnterpriseResourceType
                };
                Log.WriteVerbose(new SourceInfo(), TB_Status, "Creating Resource with name {0}", erCi.Name);
                ProjContext.EnterpriseResources.Add(erCi);
            }
            ProjContext.EnterpriseResources.Update();
            ProjContext.ExecuteQuery();
        }