Esempio n. 1
0
        public SqlString ToSqlString()
        {
            var sql = new SqlString();

            for (int i = 0; i < _parameters.Count; i++)
            {
                // add the parameters if there's something to add
                var p = _parameters[i].ToSqlString().Flatten();
                if (p.Parts.Count > 0)
                {
                    sql.Add(p);
                }
            }

            // insert the operator between all the parts
            for (int i = 0; i < sql.Parts.Count - 1; i += 2)
            {
                sql.Parts.Insert(i + 1, String.Concat(" ", Op, " "));
            }

            // if we managed to produce something, wrap it in parens
            if (sql.Parts.Count > 0)
            {
                sql.Parts.Insert(0, "(");
                sql.Parts.Add(")");
            }

            return(sql);
        }
Esempio n. 2
0
 public void AddSqlString()
 {
     Assert.AreEqual("First TestStringThis is just a test SqlString", (String)(SqlString.Add(Test1, Test2)), "#AE01");
     Assert.AreEqual("First TestStringPlainString", (String)(SqlString.Add(Test1, "PlainString")), "#AE02");
     Assert.IsTrue(SqlString.Add(Test1, null).IsNull, "#AE03");
 }
Esempio n. 3
0
 public void AddSqlString()
 {
     Assert.Equal("First TestStringThis is just a test SqlString", (string)(SqlString.Add(_test1, _test2)));
     Assert.Equal("First TestStringPlainString", (string)(SqlString.Add(_test1, "PlainString")));
     Assert.True(SqlString.Add(_test1, null).IsNull);
 }
        public async Task <SqlString> SqlGetAsync(string conString, string jsonHeaders, string procName, string jsonParams)
        {
            using (var sqlCon = new SqlConnection(conString))
                using (var sqlCmd = new SqlCommand(procName, sqlCon))
                {
                    sqlCmd.CommandType = CommandType.StoredProcedure;

                    var h = sqlCmd.Parameters.Add("@headers", SqlDbType.NVarChar, -1);
                    h.Direction = ParameterDirection.Input;
                    h.Value     = jsonHeaders;
                    var p = sqlCmd.Parameters.Add("@params", SqlDbType.NVarChar, -1);
                    p.Direction = ParameterDirection.Input;
                    p.Value     = jsonParams;

                    await sqlCon.OpenAsync();

                    using (var sqlDataReader = await sqlCmd.ExecuteReaderAsync())
                    {
                        if (sqlDataReader.HasRows)
                        {
                            SqlString sqlString = SqlString.Null;
                            while (await sqlDataReader.ReadAsync())
                            {
                                sqlString = (sqlString.IsNull) ? sqlDataReader.GetSqlString(0).Value : SqlString.Add(sqlString, sqlDataReader.GetSqlString(0).Value);
                            }
                            return(sqlString);
                        }
                        return(SqlString.Null);
                    }
                }
        }