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); }
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"); }
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); } } }