Exemple #1
0
        private void AddSPDataDefinitionToVSTemplate(DTE dte, Project project, string evaluatedSPDataTemplate, string evaluatedTemplate, string evaluatedSPDataCategory, string evaluatedSPDataName, string evaluatedTargetFileName, string evaluatedDeploymentPath)
        {
            string elementsXmlContent = GenerateContent(evaluatedTemplate, "Elements.xml");
            string spDataContent      = GenerateContent(evaluatedSPDataTemplate, "SharePointProjectItem.spdata");

            //1. create the folder for the content type, which means adding the spdata stuff to a folder in the project

            string       targetFolder      = evaluatedSPDataCategory + @"\" + evaluatedSPDataName;
            ProjectItems contentTypeFolder = null;
            ProjectItem  spDataItem        = Helpers2.AddFileToProject(dte, project, targetFolder, "SharePointProjectItem.spdata", spDataContent, true, false, out contentTypeFolder);

            //2. put the elements.xml in that folder
            CreatedProjectItem = Helpers2.AddFile(dte, contentTypeFolder, evaluatedTargetFileName, elementsXmlContent, true, this.Open);

            if (DeploymentTypeIsSet)
            {
                Helpers2.SetDeploymentType(CreatedProjectItem, this.DeploymentType);
            }
            if (DeploymentPathIsSet)
            {
                Helpers2.SetDeploymentPath(CreatedProjectItem, evaluatedDeploymentPath);
            }

            //Trace.WriteLine("AddElementsDefinitionAction FindProjectItemByPath " + targetFolder);
            ProjectItem elementFolder = Helpers.FindProjectItemByPath(project, targetFolder);

            Helpers2.AddVSElementToVSPackage(dte, project, elementFolder);

            CreatedProjectFolder = elementFolder;
        }
Exemple #2
0
        private void AddResources(Project _CurrentProject, string folderName, string resourcefilename, string content, SPFileType deploymentFileType, string deploymentPath)
        {
            //in VSS we would create an empty element "Resources" and would add the resource.resx there with different deploymenttargets
            //1. erstelle folder "Resources" und packe Text\Resources\SharePointProjectItem.spdata.t4 rein
            //2. packe file da hinein und setze noch schnell den deployment path
            //1. erstelle Folder Resources\AppResources

            ProjectItems contentTypeFolder       = null;
            string       SPDataTemplate          = @"Text\Resources\SharePointProjectItem.spdata.t4";
            string       evaluatedSPDataTemplate = EvaluateParameterAsString(_CurrentProject.DTE, SPDataTemplate);
            string       spDataContent           = GenerateContent(evaluatedSPDataTemplate, "SharePointProjectItem.spdata");
            ProjectItem  spDataItem = Helpers2.AddFileToProject(_CurrentProject.DTE, _CurrentProject, folderName, "SharePointProjectItem.spdata", spDataContent, false, false, out contentTypeFolder);

            //add the resx file or the content to the folder
            ProjectItem resourceFileItem = AddResourcesToFolder(contentTypeFolder.Parent as ProjectItem, resourcefilename, content);

            //ensure that the resources element folder is part of package
            Helpers2.AddVSElementToVSPackage(_CurrentProject.DTE, _CurrentProject, contentTypeFolder.Parent as ProjectItem);

            //set the deployment type to Resource, AppGlobalResource
            Helpers2.SetDeploymentType(resourceFileItem, deploymentFileType);

            Helpers2.SetDeploymentPath(resourceFileItem, deploymentPath);
        }