Microsoft.VisualStudio.R.Package.Sql.Publish.SProcScriptGenerator.CreatePostDeploymentScript C# (CSharp) Method

CreatePostDeploymentScript() public method

Generates SQL post deployment script that pushes R code into a table as well as
public CreatePostDeploymentScript ( SqlSProcPublishSettings settings, SProcMap sprocMap ) : string
settings SqlSProcPublishSettings
sprocMap SProcMap
return string
        public string CreatePostDeploymentScript(SqlSProcPublishSettings settings, SProcMap sprocMap) {
            var sb = new StringBuilder();
            sb.AppendLine(Invariant($"INSERT INTO {settings.TableName.ToSqlName(settings.QuoteType)}"));

            int i = 0;
            foreach (var sprocName in sprocMap) {
                var content = sprocMap[sprocName];
                sb.Append(Invariant($"VALUES ('{sprocName.ToSqlName(settings.QuoteType)}', '{content}')"));
                if (i < sprocMap.Count - 1) {
                    sb.Append(',');
                }
                sb.AppendLine(string.Empty);
                i++;
            }
            return sb.ToString();
        }

Usage Example

        /// <summary>
        /// Generates SQL post deployment script that pushes R code into a table
        /// as well as 
        /// </summary>
        private void CreatePostDeploymentScriptFile(SqlSProcPublishSettings settings, 
            EnvDTE.Project targetProject, string targetFolder, 
            EnvDTE.ProjectItem targetProjectItem, SProcMap sprocMap) {
            var postDeploymentScript = Path.Combine(targetFolder, PostDeploymentScriptName);

            var g = new SProcScriptGenerator(_fs);
            var script = g.CreatePostDeploymentScript(settings, sprocMap);

            _fs.WriteAllText(postDeploymentScript, script);

            var item = targetProjectItem.ProjectItems.AddFromFile(postDeploymentScript);
            item.Properties.Item("BuildAction").Value = "PostDeploy";
        }
All Usage Examples Of Microsoft.VisualStudio.R.Package.Sql.Publish.SProcScriptGenerator::CreatePostDeploymentScript