public static string GetSqlCreateView(CustomView view, bool isInternal)
{
var sb = new StringBuilder();
sb.AppendLine("if exists(select * from sys.objects where name = '" + view.DatabaseName + "' and type = 'V' and type_desc = 'VIEW')");
sb.AppendLine("drop view [" + view.GetSQLSchema() + "].[" + view.DatabaseName + "]");
if (isInternal)
{
sb.AppendLine("--MODELID: " + view.Key);
}
sb.AppendLine("GO");
sb.AppendLine();
sb.AppendLine("CREATE VIEW [" + view.GetSQLSchema() + "].[" + view.DatabaseName + "]");
sb.AppendLine("AS");
sb.AppendLine();
sb.AppendLine(view.SQL);
if (isInternal)
{
sb.AppendLine("--MODELID,BODY: " + view.Key);
}
sb.AppendLine("GO");
sb.AppendLine("exec sp_refreshview N'[" + view.GetSQLSchema() + "].[" + view.DatabaseName + "]';");
if (isInternal)
{
sb.AppendLine("--MODELID: " + view.Key);
}
sb.AppendLine("GO");
sb.AppendLine();
return sb.ToString();
}