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; }
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); }