using System; using System.Configuration; using System.Data; using System.Data.SqlClient; /// <summary> /// Inserts or updates MSSQL using stored procedure. /// Returns new identity column ID if successful or 0 if not. /// </summary> public class DbWriter { public DbWriter() { } /// <summary> /// This method takes an optional list of parameters. /// </summary> public string updateDB(string storedProcedureName, params SqlParameter[] spParameterList) { string returnValue = "0"; SqlDataReader sqlDataReader = null;; SqlConnection sqlConnection = null; try { sqlConnection = new SqlConnection(); sqlConnection.ConnectionString = GetConnectionString(); SqlCommand cmd = new SqlCommand(); cmd.Connection = sqlConnection; cmd.CommandText = storedProcedureName; cmd.CommandType = CommandType.StoredProcedure; // optional list of parameters for stored procedure if (spParameterList.Length > 0) { for (int i = 0; i < spParameterList.Length; i++) { cmd.Parameters.Add(spParameterList[i]); } } sqlConnection.Open(); sqlDataReader = cmd.ExecuteReader(); if (sqlDataReader.Read()) { returnValue = sqlDataReader.GetString(0); } } catch (Exception e) { returnValue = "updateDB error: " + e.Message; Console.WriteLine("updateDB error: " + e.Message); } finally { if (sqlConnection != null) { sqlConnection.Close(); } if (sqlDataReader != null) { sqlDataReader.Close(); } } return returnValue; } private string GetConnectionString() { return ConfigurationManager.ConnectionStrings ["MSSQLConnectionString"].ConnectionString; } }