public ConnectionSegment(int indentCount, Queue queue)
            : base(indentCount)
        {
            Name = $"{queue.StorageAccount}_queue";
            Requires.Add("var azure = require('azure-storage');");
            DependsOnModules.Add("\"azure-storage\": \"2.10.2\"");
            GlobalVars.Add($"var {queue.StorageAccount}_queue;");

            Methods.Add(connect
                        .Replace("#storage-account", queue.StorageAccount)
                        .Replace("#connection-string", queue.ConnectionString)
                        );
        }
示例#2
0
 public UpdateSegment(int indentCount, string methodName, Sql sql, string statement,
                      List <Parameter> parameters)
     : base(indentCount)
 {
     Requires.Add("var Request = require('tedious').Request;");
     DependsOnSegments.Add(new ConnectionSegement(indentCount, sql));
     DependsOnModules.Add("\"tedious\": \"5.0.3\"");
     Methods.Add(updateMethod
                 .Replace("#method-name", methodName)
                 .Replace("#sql", statement)
                 .Replace("#database", sql.DbName)
                 .Replace("#parameters", string.Join(',', parameters.Select(p => p.Name.Replace("@", ""))))
                 .Replace("#add-params", Helper.CreateParameters(parameters)));
     FunctionCode = $"await {methodName}({string.Join(',', parameters.Select(p => p.Value)).Trim()});";
 }
示例#3
0
        public ConnectionSegement(int indentCount, Sql sql)
            : base(indentCount)
        {
            Name = $"{sql.DbName}_connection";
            GlobalVars.Add($"var {sql.DbName}_connection;");
            GlobalVars.Add($"var {sql.DbName}_connected = false;");
            Requires.Add("var TYPES = require('tedious').TYPES;");
            DependsOnModules.Add("\"tedious\": \"5.0.3\"");

            Methods.Add(connect
                        .Replace("#username", sql.Username)
                        .Replace("#password", sql.Password)
                        .Replace("#connectinString", sql.ConnectinString)
                        .Replace("#database", sql.DbName));
        }
示例#4
0
        public SelectSegment(int indentCount, string methodName, Sql sql,
                             string statement, string assignTo, List <Parameter> parameters,
                             ReturnAs returnAs = ReturnAs.Array)
            : base(indentCount)
        {
            Requires.Add("var Request = require('tedious').Request;");
            DependsOnSegments.Add(new ConnectionSegement(indentCount, sql));
            DependsOnModules.Add("\"tedious\": \"5.0.3\"");
            Methods.Add(selectMethod
                        .Replace("#method-name", methodName)
                        .Replace("#sql", statement)
                        .Replace("#database", sql.DbName)
                        .Replace("#scalar", (returnAs == ReturnAs.Scalar).ToLowerString())
                        .Replace("#entity", (returnAs == ReturnAs.Entity).ToLowerString())
                        .Replace("#parameters", string.Join(',', parameters.Select(p => p.Name.Replace("@", ""))))
                        .Replace("#add-params", Helper.CreateParameters(parameters)));;

            FunctionCode = $"var {assignTo} = await {methodName}({string.Join(',', parameters.Select(p => p.Value)).Trim()});";
        }
示例#5
0
 public InsertSegment(int indentCount, string methodName, Sql sql,
                      string statement, string assignTo, List <Parameter> parameters, bool returnsId)
     : base(indentCount)
 {
     Requires.Add("var Request = require('tedious').Request;");
     DependsOnSegments.Add(new ConnectionSegement(indentCount, sql));
     DependsOnModules.Add("\"tedious\": \"5.0.3\"");
     Methods.Add(insertMethod
                 .Replace("#method-name", methodName)
                 .Replace("#sql", statement)
                 .Replace("#database", sql.DbName)
                 .Replace("#returns-id", returnsId.ToLowerString())
                 .Replace("#parameters", string.Join(',', parameters.Select(p => p.Name.Replace("@", ""))))
                 .Replace("#add-params", Helper.CreateParameters(parameters)));
     if (!string.IsNullOrWhiteSpace(assignTo))
     {
         FunctionCode = $"{assignTo} = await {methodName}({string.Join(',', parameters.Select(p => p.Value)).Trim()});";
     }
     else
     {
         FunctionCode = $"await {methodName}({string.Join(',', parameters.Select(p => p.Value)).Trim()});";
     }
 }