public static string GetSQLCreateStoredProc(CustomStoredProcedure storedProcedure, bool isInternal)
{
var sb = new StringBuilder();
var name = storedProcedure.GetDatabaseObjectName();
sb.AppendLine("if exists(select * from sys.objects where name = '" + name + "' and type = 'P' and type_desc = 'SQL_STORED_PROCEDURE')");
sb.AppendLine("drop procedure [" + storedProcedure.GetSQLSchema() + "].[" + name + "]");
if (isInternal)
{
sb.AppendLine("--MODELID: " + storedProcedure.Key);
}
sb.AppendLine("GO");
sb.AppendLine();
sb.AppendLine("CREATE PROCEDURE [" + storedProcedure.GetSQLSchema() + "].[" + name + "]");
if (storedProcedure.Parameters.Count > 0)
{
sb.AppendLine("(");
sb.Append(BuildStoredProcParameterList(storedProcedure));
sb.AppendLine(")");
}
sb.AppendLine("AS");
sb.AppendLine();
sb.Append(storedProcedure.SQL);
sb.AppendLine();
if (isInternal)
{
sb.AppendLine("--MODELID,BODY: " + storedProcedure.Key);
}
sb.AppendLine("GO");
sb.AppendLine();
return sb.ToString();
}