private void Insert(string iTableName, List<string> iColumns, Scripting.Dictionary iParameters) { // SqlConnection sqlConn = new SqlConnection(iConnectionString); string sqlCommand = String.Format("INSERT INTO {0} (", iTableName); foreach (string column in iColumns) { sqlCommand += string.Format("{0},", column); } sqlCommand = sqlCommand.Remove(sqlCommand.Length - 1, 1); sqlCommand += ")"; sqlCommand += " VALUES ("; //ArrayList lKeys = new ArrayList(); object[] lKeys = (object[])iParameters.Keys(); object[] lItems = (object[])iParameters.Items(); for (int i = 0; i < iParameters.Count; i++) { sqlCommand += String.Format("{0},", lKeys[i]); } sqlCommand = sqlCommand.Remove(sqlCommand.Length - 1, 1); sqlCommand += ");"; SqlCommand myCommand = new SqlCommand(sqlCommand, conn); for (int i = 0; i < iParameters.Count; i++) { myCommand.Parameters.AddWithValue((string)lKeys[i], lItems[i]); } //foreach (var parameter in iParameters) //{ // myCommand.Parameters.AddWithValue(parameter.Key, parameter.Value); //} try { if ((conn.State != ConnectionState.Open)) { conn.Open(); } myCommand.ExecuteNonQuery(); } catch (System.Exception ex) { throw ex; } finally { if (conn.State == ConnectionState.Open) { conn.Close(); } } }
//public string[] iColumns() //{ // return; //} public Scripting.Dictionary replaceKey(Hashtable dbHasTable, Scripting.Dictionary iParameters) { Scripting.Dictionary tmpDic = new Scripting.Dictionary(); object[] lKeys = (object[])iParameters.Keys(); object[] lItems = (object[])iParameters.Items(); for (int i = 0; i < iParameters.Count; i++) { if (dbHasTable.ContainsKey((string)lKeys[i])) { lKeys[i] = dbHasTable[lKeys[i]]; } } for (int j = 0; j < iParameters.Count; j++) { tmpDic.Add(lKeys[j],lItems[j]); } return tmpDic; }