コード例 #1
0
        /// <summary>
        /// Creates the project template link node.
        /// </summary>
        /// <param name="projectName">Name of the project.</param>
        /// <param name="relativeTemplatePath">The relative template path.</param>
        /// <returns></returns>
        internal XmlNode CreateProjectTemplateLinkNode(string projectName, string relativeTemplatePath)
        {
            const string PROJECTTEMPLATELINK_NODE = "ProjectTemplateLink";
            const string PROJECTNAME_ATT          = "ProjectName";

            XmlNode projectTemplateLinkNode = VSTemplateExporterHelper.CreateNode(vsTemplate, PROJECTTEMPLATELINK_NODE, relativeTemplatePath);

            projectTemplateLinkNode.Attributes.Append(VSTemplateExporterHelper.CreateAttribute(vsTemplate, PROJECTNAME_ATT, projectName));

            return(projectTemplateLinkNode);
        }
コード例 #2
0
        /// <summary>
        /// Creates the solution folder node.
        /// </summary>
        /// <param name="solutionFolderName">Name of the solution folder.</param>
        /// <returns></returns>
        internal XmlNode CreateSolutionFolderNode(string solutionFolderName)
        {
            const string SOLUTIONFOLDER_NODE = "SolutionFolder";
            const string NAME_ATT            = "Name";

            XmlNode solutionFolderNode = VSTemplateExporterHelper.CreateNode(vsTemplate, SOLUTIONFOLDER_NODE);

            solutionFolderNode.Attributes.Append(VSTemplateExporterHelper.CreateAttribute(vsTemplate, NAME_ATT, solutionFolderName));

            return(solutionFolderNode);
        }
コード例 #3
0
        /// <summary>
        /// Creates the project item node.
        /// </summary>
        /// <param name="item">The item.</param>
        /// <param name="replaceParameters">if set to <c>true</c> [replace parameters].</param>
        /// <returns></returns>
        internal XmlNode CreateProjectItemNode(string item, bool replaceParameters)
        {
            const string PROJECTITEM_NODE           = "ProjectItem";
            const string REPLACEPARAMETERS_ATT_NAME = "ReplaceParameters";
            const string TARGETFILENAME_ATT         = "TargetFileName";

            XmlNode projectItemNode = VSTemplateExporterHelper.CreateNode(vsTemplate, PROJECTITEM_NODE, item);

            projectItemNode.Attributes.Append(VSTemplateExporterHelper.CreateAttribute(vsTemplate, REPLACEPARAMETERS_ATT_NAME, replaceParameters.ToString().ToLowerInvariant()));
            projectItemNode.Attributes.Append(VSTemplateExporterHelper.CreateAttribute(vsTemplate, TARGETFILENAME_ATT, item));
            return(projectItemNode);
        }
コード例 #4
0
        /// <summary>
        /// Creates the folder node.
        /// </summary>
        /// <param name="folderName">Name of the folder.</param>
        /// <returns></returns>
        internal XmlNode CreateFolderNode(string folderName)
        {
            const string FOLDER_NODE          = "Folder";
            const string NAME_ATT             = "Name";
            const string TARGETFOLDERNAME_ATT = "TargetFolderName";

            XmlNode folderNode = VSTemplateExporterHelper.CreateNode(vsTemplate, FOLDER_NODE);

            folderNode.Attributes.Append(VSTemplateExporterHelper.CreateAttribute(vsTemplate, NAME_ATT, folderName));
            folderNode.Attributes.Append(VSTemplateExporterHelper.CreateAttribute(vsTemplate, TARGETFOLDERNAME_ATT, folderName));
            return(folderNode);
        }
コード例 #5
0
        /// <summary>
        /// Creates the project node.
        /// </summary>
        /// <returns></returns>
        internal XmlNode CreateProjectNode(string projectFileName)
        {
            const string PROJECT_NODE                = "Project";
            const string TARGETFILENAME_ATT          = "TargetFileName";
            const string FILE_ATT                    = "File";
            const string REPLACEPARAMETERS_ATT_NAME  = "ReplaceParameters";
            const string REPLACEPARAMETERS_ATT_VALUE = "true";

            XmlNode projectContent = VSTemplateExporterHelper.CreateNode(vsTemplate, PROJECT_NODE);

            projectContent.Attributes.Append(VSTemplateExporterHelper.CreateAttribute(vsTemplate, TARGETFILENAME_ATT, projectFileName));
            projectContent.Attributes.Append(VSTemplateExporterHelper.CreateAttribute(vsTemplate, FILE_ATT, projectFileName));
            projectContent.Attributes.Append(VSTemplateExporterHelper.CreateAttribute(vsTemplate, REPLACEPARAMETERS_ATT_NAME, REPLACEPARAMETERS_ATT_VALUE));

            return(projectContent);
        }
コード例 #6
0
        /// <summary>
        /// Creates the root node.
        /// </summary>
        /// <returns></returns>
        internal XmlNode CreateRootNode()
        {
            const string VSTEMPLATE_NODE   = "VSTemplate";
            const string VSTEMPLATE_NS     = "http://schemas.microsoft.com/developer/vstemplate/2005";
            const string VERSION_ATT_NAME  = "Version";
            const string VERSION_ATT_VALUE = "2.0.0";
            const string TYPE_ATT_NAME     = "Type";
            const string TYPE_ATT_VALUE    = "Project";

            XmlNode root = vsTemplate.CreateElement(VSTEMPLATE_NODE, VSTEMPLATE_NS);

            root.Attributes.Append(VSTemplateExporterHelper.CreateAttribute(vsTemplate, VERSION_ATT_NAME, VERSION_ATT_VALUE));
            root.Attributes.Append(VSTemplateExporterHelper.CreateAttribute(vsTemplate, TYPE_ATT_NAME, TYPE_ATT_VALUE));
            vsTemplate.AppendChild(root);
            return(root);
        }