User-14642827 posted
How do I fix this error: ExecuteNonQuery: CommandText property has not been initialized?
System.Data.SqlClient.SqlCommand.ValidateCommand(bool async, string method)
System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource<object> completion, bool sendToPipe, int timeout, bool asyncWrite, string methodName)
System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
NextGenerationUI.Services.PersonActivityLogService.InsertPersonActivityLog(int logId, string edi, string titleOrRank, string firstName, string middleInitial, string lastName, string activityDateTime, string activityTypeDefinition, string additionalDetails, string reasonMessage, string notes) in PersonActivityLogService.cs
+
cmd.ExecuteNonQuery();
NextGenerationUI.Controllers.AccountController+<LoginAsync>d__13.MoveNext() in AccountController.cs
+
_personActivityLogService.InsertPersonActivityLog(0, "edi", "title", "fn", "mi", "ln", "time", "none", "none", "none", "none");
My code:
public void InsertPersonActivityLog(int logId, string edi, string titleOrRank, string firstName, string middleInitial, string lastName, string activityDateTime, string activityTypeDefinition, string additionalDetails, string reasonMessage, string notes)
{
StringBuilder errorMessages = new StringBuilder();
try
{
// Get the connection string from the appsettings.json.
conn.ConnectionString = myConn.DefaultConnectionString(configuration); //@"Server=BRENTHUMBERDEVE;Database=NextGeneration;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=True;ApplicationIntent=ReadWrite;MultiSubnetFailover=False";
// Open the connection.
conn.Open();
cmd.Connection = conn;
// Set the command type of the command object.
cmd.CommandType = System.Data.CommandType.StoredProcedure;
// Assign values as "parameters to avoid 'SQL Injections.'"
cmd.Parameters.AddWithValue("@edi", edi);
cmd.Parameters.AddWithValue("@lName", lastName);
cmd.Parameters.AddWithValue("@fname", firstName);
cmd.Parameters.AddWithValue("@mi", middleInitial);
cmd.Parameters.AddWithValue("@date", activityDateTime);
cmd.Parameters.AddWithValue("@descriptor", activityTypeDefinition);
cmd.Parameters.AddWithValue("@details", additionalDetails);
cmd.Parameters.AddWithValue("@reason", reasonMessage);
cmd.Parameters.AddWithValue("@notes", notes);
cmd.ExecuteNonQuery();
}
catch(SqlException ex)
{
for (int i = 0; i < ex.Errors.Count; i++)
{
errorMessages.Append("Index #" + i + "\n" +
"Message: " + ex.Errors[i].Message + "\n" +
"LineNumber: " + ex.Errors[i].LineNumber + "\n" +
"Source: " + ex.Errors[i].Source + "\n" +
"Procedure: " + ex.Errors[i].Procedure + "\n");
}
Console.WriteLine(errorMessages.ToString());
}
finally
{
conn.Close();
conn.Dispose();
}
}