init
This commit is contained in:
@@ -0,0 +1,176 @@
|
||||
using DbAPI.Connections;
|
||||
using DbAPI.Errors;
|
||||
using DTS.Common.Interface.Database;
|
||||
using System;
|
||||
using System.Data;
|
||||
using System.Data.SqlClient;
|
||||
using DTS.Common.Interface.Groups.GroupList;
|
||||
using System.Collections.Generic;
|
||||
using DTS.Common.Interface.Groups;
|
||||
using DTS.Common.Classes.Groups;
|
||||
using DbAPI.Logging;
|
||||
using System.Diagnostics;
|
||||
|
||||
namespace DbAPI.GroupHardware
|
||||
{
|
||||
/// <summary>
|
||||
/// Handles GroupHardware functions
|
||||
/// </summary>
|
||||
internal class GroupHardware : IGroupHardware
|
||||
{
|
||||
public ulong GroupHardwareInsert(IUserDbRecord user,
|
||||
IConnectionDetails connection,
|
||||
GroupHardwareDbRecord groupHardwareDbRecord,
|
||||
out int newId,
|
||||
out string errorMessageString)
|
||||
{
|
||||
newId = -1;
|
||||
errorMessageString = string.Empty;
|
||||
|
||||
if (!DbAPI.Connections.IsUserLoggedIn(user, connection))
|
||||
{
|
||||
return ErrorCodes.ERROR_ACCESS_DENIED;
|
||||
}
|
||||
var ret = ConnectionManager.GetSqlCommand(connection, out var cmd, "sp_GroupHardwareInsert");
|
||||
if (ret != ErrorCodes.ERROR_SUCCESS)
|
||||
{
|
||||
return ret;
|
||||
}
|
||||
try
|
||||
{
|
||||
cmd.CommandType = CommandType.StoredProcedure;
|
||||
cmd.Parameters.Add(new SqlParameter("@GroupId", SqlDbType.Int) { Value = groupHardwareDbRecord.GroupId });
|
||||
cmd.Parameters.Add(new SqlParameter("@DASId", SqlDbType.Int) { Value = groupHardwareDbRecord.DASId });
|
||||
var newGroupHardwareIdParam = new SqlParameter("@new_id", SqlDbType.Int) { Direction = ParameterDirection.Output };
|
||||
cmd.Parameters.Add(newGroupHardwareIdParam);
|
||||
var errorNumber = new SqlParameter("@errorNumber", SqlDbType.Int) { Direction = ParameterDirection.Output };
|
||||
cmd.Parameters.Add(errorNumber);
|
||||
var errorMessage = new SqlParameter("@errorMessage", SqlDbType.NVarChar, 255) { Direction = ParameterDirection.Output };
|
||||
cmd.Parameters.Add(errorMessage);
|
||||
|
||||
cmd.ExecuteNonQuery();
|
||||
|
||||
if (null != errorNumber.Value)
|
||||
{
|
||||
if (Convert.ToInt32(errorNumber.Value) != 0)
|
||||
{
|
||||
LogManager.Log(TraceEventType.Error, LogManager.LogEvents.TestSetups, $"GroupHardwareInsert failed: {errorNumber.Value} {errorMessage.Value}");
|
||||
errorMessageString = errorMessage.Value.ToString();
|
||||
return Convert.ToUInt32(errorNumber.Value);
|
||||
}
|
||||
}
|
||||
|
||||
newId = Convert.ToInt32(newGroupHardwareIdParam.Value);
|
||||
return ErrorCodes.ERROR_SUCCESS;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
LogManager.Log(TraceEventType.Error, LogManager.LogEvents.TestSetups, $"GroupHardwareInsert failed: {ex.Message}");
|
||||
return ErrorCodes.ERROR_UNKNOWN;
|
||||
}
|
||||
finally
|
||||
{
|
||||
cmd.Connection.Dispose();
|
||||
cmd.Dispose();
|
||||
}
|
||||
}
|
||||
|
||||
public ulong GroupHardwareGet(IUserDbRecord user,
|
||||
IConnectionDetails connection,
|
||||
int? groupId,
|
||||
string serialNumber,
|
||||
bool? embedded,
|
||||
out GroupHardwareDbRecord[] groupHardwareRecords)
|
||||
{
|
||||
groupHardwareRecords = null;
|
||||
var list = new List<GroupHardwareDbRecord>();
|
||||
if (!DbAPI.Connections.IsUserLoggedIn(user, connection))
|
||||
{
|
||||
return ErrorCodes.ERROR_ACCESS_DENIED;
|
||||
}
|
||||
var ret = ConnectionManager.GetSqlCommand(connection, out var cmd, "sp_GroupHardwareGet");
|
||||
if (ret != ErrorCodes.ERROR_SUCCESS)
|
||||
{
|
||||
return ret;
|
||||
}
|
||||
try
|
||||
{
|
||||
cmd.CommandType = CommandType.StoredProcedure;
|
||||
cmd.Parameters.Add(new SqlParameter("@GroupId", SqlDbType.Int) { Value = groupId });
|
||||
cmd.Parameters.Add(new SqlParameter("@SerialNumber", SqlDbType.NVarChar) { Value = serialNumber });
|
||||
cmd.Parameters.Add(new SqlParameter("@Embedded", SqlDbType.Bit) { Value = embedded });
|
||||
|
||||
using (var reader = cmd.ExecuteReader())
|
||||
{
|
||||
while (reader.Read())
|
||||
{
|
||||
list.Add(new GroupHardwareDbRecord(reader));
|
||||
}
|
||||
groupHardwareRecords = list.ToArray();
|
||||
}
|
||||
return ErrorCodes.ERROR_SUCCESS;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
LogManager.Log(TraceEventType.Error, LogManager.LogEvents.TestSetups, $"GroupsGet failed - {ex.Message}");
|
||||
return ErrorCodes.ERROR_UNKNOWN;
|
||||
}
|
||||
finally
|
||||
{
|
||||
cmd.Connection.Dispose();
|
||||
}
|
||||
}
|
||||
|
||||
public ulong GroupHardwareDelete(IUserDbRecord user,
|
||||
IConnectionDetails connection,
|
||||
int? groupId,
|
||||
int? dasId,
|
||||
out string errorString)
|
||||
{
|
||||
errorString = string.Empty;
|
||||
if (!DbAPI.Connections.IsUserLoggedIn(user, connection))
|
||||
{
|
||||
return ErrorCodes.ERROR_ACCESS_DENIED;
|
||||
}
|
||||
var ret = ConnectionManager.GetSqlCommand(connection, out var cmd, "sp_GroupHardwareDelete");
|
||||
if (ret != ErrorCodes.ERROR_SUCCESS)
|
||||
{
|
||||
return ret;
|
||||
}
|
||||
var errorNumberULong = ErrorCodes.ERROR_SUCCESS;
|
||||
try
|
||||
{
|
||||
cmd.CommandType = CommandType.StoredProcedure;
|
||||
cmd.Parameters.Add(new SqlParameter("@GroupId", SqlDbType.Int) { Value = groupId });
|
||||
cmd.Parameters.Add(new SqlParameter("@DASId", SqlDbType.Int) { Value = dasId });
|
||||
var errorNumber = new SqlParameter("@errorNumber", SqlDbType.Int) { Direction = ParameterDirection.Output };
|
||||
cmd.Parameters.Add(errorNumber);
|
||||
var errorMessage = new SqlParameter("@errorMessage", SqlDbType.NVarChar, 255) { Direction = ParameterDirection.Output };
|
||||
cmd.Parameters.Add(errorMessage);
|
||||
|
||||
cmd.ExecuteNonQuery();
|
||||
|
||||
if (null != errorNumber.Value)
|
||||
{
|
||||
if (Convert.ToInt32(errorNumber.Value) != 0)
|
||||
{
|
||||
errorNumberULong = Convert.ToUInt64(errorNumber.Value);
|
||||
throw new Exception((string)errorMessage.Value);
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
//Concatenate any error string returned from the stored procedure call
|
||||
errorString = $"{ex.Message}; {errorString}";
|
||||
return ErrorCodes.ERROR_UNKNOWN;
|
||||
}
|
||||
finally
|
||||
{
|
||||
cmd.Connection.Dispose();
|
||||
}
|
||||
|
||||
return errorNumberULong;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,81 @@
|
||||
using DbAPI.Connections;
|
||||
using DTS.Common.Interface.Database;
|
||||
using System;
|
||||
using DTS.Common.Classes.LabratoryDetails;
|
||||
using DTS.Common.Interface.TestMetaData;
|
||||
|
||||
namespace DbAPI.LabratoryDetails
|
||||
{
|
||||
/// <summary>
|
||||
/// LabratoryDetails related functions (GetLabratoryDetails, )
|
||||
/// </summary>
|
||||
public interface ILabratoryDetails
|
||||
{
|
||||
/// <summary>
|
||||
/// Inserts a new record in the LabratoryDetails table
|
||||
/// </summary>
|
||||
/// <param name="user"></param>
|
||||
/// <param name="connection"></param>
|
||||
/// <param name="labratoryDetailsDbRecord"></param>
|
||||
/// <param name="newId">The Id of the new record in the LabratoryDetails table</param>
|
||||
/// <param name="errorString">Error string returned, possibly from sp_LabratoryDetailsUpdate</param>
|
||||
/// <returns>0 (ERROR_SUCCESS) on success, all other values are error codes</returns>
|
||||
ulong LabratoryDetailsInsert(IUserDbRecord user,
|
||||
IConnectionDetails connection,
|
||||
LabratoryDetailsDbRecord labratoryDetailsDbRecord,
|
||||
out int newId,
|
||||
out string errorString);
|
||||
|
||||
/// <summary>
|
||||
/// Updates an existing record in the LabratoryDetails table
|
||||
/// </summary>
|
||||
/// <param name="user"></param>
|
||||
/// <param name="connection"></param>
|
||||
/// <param name = "labratoryDetailsDbRecord"></param>
|
||||
/// <param name="errorString">Error string returned, possibly from sp_LabratoryDetailsUpdate</param>
|
||||
/// <returns>0 (ERROR_SUCCESS) on success, all other values are error codes</returns>
|
||||
ulong LabratoryDetailsUpdate(IUserDbRecord user,
|
||||
IConnectionDetails connection,
|
||||
LabratoryDetailsDbRecord labratoryDetailsDbRecord,
|
||||
out string errorString);
|
||||
|
||||
/// <summary>
|
||||
/// Updates an existing record or Inserts a new record in the LabratoryDetails table
|
||||
/// </summary>
|
||||
/// <param name="user"></param>
|
||||
/// <param name="connection"></param>
|
||||
/// <param name = "labratoryDetailsDbRecord"></param>
|
||||
/// <param name="errorString">Error string returned, possibly from sp_LabratoryDetailsUpdate</param>
|
||||
/// <returns>0 (ERROR_SUCCESS) on success, all other values are error codes</returns>
|
||||
ulong LabratoryDetailsUpdateInsert(IUserDbRecord user,
|
||||
IConnectionDetails connection,
|
||||
LabratoryDetailsDbRecord labratoryDetailsDbRecord,
|
||||
out string errorString);
|
||||
|
||||
/// <summary>
|
||||
/// retrieves all laboratory details matching search criteria
|
||||
/// </summary>
|
||||
/// <param name="user"></param>
|
||||
/// <param name="connection"></param>
|
||||
/// <param name="name">Name in the LabratoryDetails table</param>
|
||||
/// <param name="labratoryDetailsDbRecords">null, or records found</param>
|
||||
/// <returns>0 (ERROR_SUCCESS) on success, all other values are error codes</returns>
|
||||
ulong LabratoryDetailsGet(IUserDbRecord user,
|
||||
IConnectionDetails connection,
|
||||
string name,
|
||||
out ILabratoryDetailsDbRecord[] labratoryDetailsDbRecords);
|
||||
|
||||
/// <summary>
|
||||
/// Deletes an entry in the LabratoryDetails table
|
||||
/// </summary>
|
||||
/// <param name="user"></param>
|
||||
/// <param name="connection"></param>
|
||||
/// <param name="name">Name in the LabratoryDetails table</param>
|
||||
/// <param name="errorString">Error string returned, possibly from sp_LabratoryDetailsDelete</param>
|
||||
/// <returns>0 (ERROR_SUCCESS) on success, all other values are error codes</returns>
|
||||
ulong LabratoryDetailsDelete(IUserDbRecord user,
|
||||
IConnectionDetails connection,
|
||||
string name,
|
||||
out string errorString);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,235 @@
|
||||
using DbAPI.Connections;
|
||||
using DbAPI.Errors;
|
||||
using DTS.Common.Interface.Database;
|
||||
using System;
|
||||
using System.Data;
|
||||
using System.Data.SqlClient;
|
||||
using DTS.Common.Interface.Groups.GroupList;
|
||||
using System.Collections.Generic;
|
||||
using DTS.Common.Interface.Groups;
|
||||
using DTS.Common.Classes.Groups;
|
||||
using DbAPI.Logging;
|
||||
using System.Diagnostics;
|
||||
|
||||
namespace DbAPI.Groups
|
||||
{
|
||||
/// <summary>
|
||||
/// Handles channel functions
|
||||
/// </summary>
|
||||
internal class Groups : IGroups
|
||||
{
|
||||
public ulong GroupsInsert(IUserDbRecord user,
|
||||
IConnectionDetails connection,
|
||||
ref IGroupDbRecord group)
|
||||
{
|
||||
if (!DbAPI.Connections.IsUserLoggedIn(user, connection))
|
||||
{
|
||||
return ErrorCodes.ERROR_ACCESS_DENIED;
|
||||
}
|
||||
var ret = ConnectionManager.GetSqlCommand(connection, out var cmd, "sp_GroupsInsert");
|
||||
if (ret != ErrorCodes.ERROR_SUCCESS)
|
||||
{
|
||||
return ret;
|
||||
}
|
||||
try
|
||||
{
|
||||
cmd.CommandType = CommandType.StoredProcedure;
|
||||
cmd.Parameters.Add(new SqlParameter("@SerialNumber", SqlDbType.NVarChar, 255) { Value = group.SerialNumber });
|
||||
cmd.Parameters.Add(new SqlParameter("@DisplayName", SqlDbType.NVarChar, 255) { Value = group.DisplayName });
|
||||
cmd.Parameters.Add(new SqlParameter("@Description", SqlDbType.NVarChar, 255) { Value = group.Description });
|
||||
cmd.Parameters.Add(new SqlParameter("@Embedded", SqlDbType.Bit) { Value = group.Embedded });
|
||||
cmd.Parameters.Add(new SqlParameter("@LastModified", SqlDbType.DateTime) { Value = group.LastModified });
|
||||
cmd.Parameters.Add(new SqlParameter("@LastModifiedBy", SqlDbType.NVarChar, 255) { Value = group.LastModifiedBy });
|
||||
cmd.Parameters.Add(new SqlParameter("@StaticGroupId", SqlDbType.Int) { Value = group.StaticGroupId });
|
||||
cmd.Parameters.Add(new SqlParameter("@ExtraProperties", SqlDbType.NVarChar, -1) { Value = group.ExtraProperties ?? "" });
|
||||
|
||||
var errorNumber = new SqlParameter("@errorNumber", SqlDbType.Int) { Direction = ParameterDirection.Output };
|
||||
cmd.Parameters.Add(errorNumber);
|
||||
|
||||
var errorMessage = new SqlParameter("@errorMessage", SqlDbType.NVarChar, 255) { Direction = ParameterDirection.Output };
|
||||
cmd.Parameters.Add(errorMessage);
|
||||
|
||||
var newId = new SqlParameter("@new_id", SqlDbType.Int) { Direction = ParameterDirection.Output };
|
||||
cmd.Parameters.Add(newId);
|
||||
|
||||
cmd.ExecuteNonQuery();
|
||||
|
||||
if (null != errorNumber.Value)
|
||||
{
|
||||
if (Convert.ToInt32(errorNumber.Value) != 0)
|
||||
{
|
||||
LogManager.Log(TraceEventType.Error, LogManager.LogEvents.TestSetups, $"GroupsInsert failed: {errorNumber.Value} {errorMessage.Value}");
|
||||
return ErrorCodes.ERROR_UNKNOWN;
|
||||
}
|
||||
}
|
||||
|
||||
group.Id = Convert.ToInt32(newId.Value);
|
||||
return ErrorCodes.ERROR_SUCCESS;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
LogManager.Log(TraceEventType.Error, LogManager.LogEvents.TestSetups, $"GroupsInsert failed: {ex.Message}");
|
||||
return ErrorCodes.ERROR_UNKNOWN;
|
||||
}
|
||||
finally
|
||||
{
|
||||
cmd.Connection.Dispose();
|
||||
cmd.Dispose();
|
||||
}
|
||||
}
|
||||
|
||||
public ulong GroupsUpdate(IUserDbRecord user,
|
||||
IConnectionDetails connection,
|
||||
IGroupDbRecord group)
|
||||
{
|
||||
if (!DbAPI.Connections.IsUserLoggedIn(user, connection))
|
||||
{
|
||||
return ErrorCodes.ERROR_ACCESS_DENIED;
|
||||
}
|
||||
var ret = ConnectionManager.GetSqlCommand(connection, out var cmd, "sp_GroupsUpdate");
|
||||
if (ret != ErrorCodes.ERROR_SUCCESS)
|
||||
{
|
||||
return ret;
|
||||
}
|
||||
try
|
||||
{
|
||||
cmd.CommandType = CommandType.StoredProcedure;
|
||||
cmd.Parameters.Add(new SqlParameter("@Id", SqlDbType.Int) { Value = group.Id });
|
||||
cmd.Parameters.Add(new SqlParameter("@SerialNumber", SqlDbType.NVarChar, 255) { Value = group.SerialNumber });
|
||||
cmd.Parameters.Add(new SqlParameter("@DisplayName", SqlDbType.NVarChar, 255) { Value = group.DisplayName });
|
||||
cmd.Parameters.Add(new SqlParameter("@Description", SqlDbType.NVarChar, 255) { Value = group.Description });
|
||||
cmd.Parameters.Add(new SqlParameter("@Embedded", SqlDbType.Bit) { Value = group.Embedded });
|
||||
cmd.Parameters.Add(new SqlParameter("@LastModified", SqlDbType.DateTime) { Value = group.LastModified });
|
||||
cmd.Parameters.Add(new SqlParameter("@LastModifiedBy", SqlDbType.NVarChar, 255) { Value = group.LastModifiedBy });
|
||||
cmd.Parameters.Add(new SqlParameter("@StaticGroupId", SqlDbType.Int) { Value = group.StaticGroupId });
|
||||
cmd.Parameters.Add(new SqlParameter("@ExtraProperties", SqlDbType.NVarChar, -1) { Value = group.ExtraProperties });
|
||||
|
||||
var errorNumber = new SqlParameter("@errorNumber", SqlDbType.Int) { Direction = ParameterDirection.Output };
|
||||
cmd.Parameters.Add(errorNumber);
|
||||
|
||||
var errorMessage = new SqlParameter("@errorMessage", SqlDbType.NVarChar, 255) { Direction = ParameterDirection.Output };
|
||||
cmd.Parameters.Add(errorMessage);
|
||||
|
||||
cmd.ExecuteNonQuery();
|
||||
|
||||
if (!DBNull.Value.Equals(errorNumber.Value) && 0 != Convert.ToInt32(errorNumber.Value))
|
||||
{
|
||||
LogManager.Log(TraceEventType.Error, LogManager.LogEvents.TestSetups, $"GroupsUpdate failed - {errorNumber.Value} {errorMessage.Value}");
|
||||
return ErrorCodes.ERROR_UNKNOWN;
|
||||
}
|
||||
return ErrorCodes.ERROR_SUCCESS;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
LogManager.Log(TraceEventType.Error, LogManager.LogEvents.TestSetups, $"GroupsUpdate failed - {ex.Message}");
|
||||
return ErrorCodes.ERROR_UNKNOWN;
|
||||
}
|
||||
finally
|
||||
{
|
||||
cmd.Connection.Dispose();
|
||||
}
|
||||
|
||||
}
|
||||
public ulong GroupsGet(IUserDbRecord user,
|
||||
IConnectionDetails connection,
|
||||
int? id,
|
||||
string serialNumber,
|
||||
string displayName,
|
||||
bool? embedded,
|
||||
int? staticGroupId,
|
||||
out IGroupDbRecord[] groups)
|
||||
{
|
||||
groups = null;
|
||||
var list = new List<IGroupDbRecord>();
|
||||
if (!DbAPI.Connections.IsUserLoggedIn(user, connection))
|
||||
{
|
||||
return ErrorCodes.ERROR_ACCESS_DENIED;
|
||||
}
|
||||
var ret = ConnectionManager.GetSqlCommand(connection, out var cmd, "sp_GroupsGet");
|
||||
if (ret != ErrorCodes.ERROR_SUCCESS)
|
||||
{
|
||||
return ret;
|
||||
}
|
||||
try
|
||||
{
|
||||
cmd.CommandType = CommandType.StoredProcedure;
|
||||
cmd.Parameters.Add(new SqlParameter("@Id", SqlDbType.Int) { Value = id });
|
||||
cmd.Parameters.Add(new SqlParameter("@SerialNumber", SqlDbType.NVarChar) { Value = serialNumber });
|
||||
cmd.Parameters.Add(new SqlParameter("@DisplayName", SqlDbType.NVarChar) { Value = displayName });
|
||||
cmd.Parameters.Add(new SqlParameter("@Embedded", SqlDbType.Bit) { Value = embedded });
|
||||
cmd.Parameters.Add(new SqlParameter("@StaticGroupId", SqlDbType.Int) { Value = staticGroupId });
|
||||
|
||||
using (var reader = cmd.ExecuteReader())
|
||||
{
|
||||
while (reader.Read())
|
||||
{
|
||||
list.Add(new GroupDbRecord(reader));
|
||||
}
|
||||
groups = list.ToArray();
|
||||
}
|
||||
return ErrorCodes.ERROR_SUCCESS;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
LogManager.Log(TraceEventType.Error, LogManager.LogEvents.TestSetups, $"GroupsGet failed - {ex.Message}");
|
||||
return ErrorCodes.ERROR_UNKNOWN;
|
||||
}
|
||||
finally
|
||||
{
|
||||
cmd.Connection.Dispose();
|
||||
}
|
||||
}
|
||||
|
||||
public ulong GroupsDelete(IUserDbRecord user,
|
||||
IConnectionDetails connection,
|
||||
long id,
|
||||
out string errorString)
|
||||
{
|
||||
errorString = string.Empty;
|
||||
if (!DbAPI.Connections.IsUserLoggedIn(user, connection))
|
||||
{
|
||||
return ErrorCodes.ERROR_ACCESS_DENIED;
|
||||
}
|
||||
var ret = ConnectionManager.GetSqlCommand(connection, out var cmd, "sp_GroupsDelete");
|
||||
if (ret != ErrorCodes.ERROR_SUCCESS)
|
||||
{
|
||||
return ret;
|
||||
}
|
||||
var errorNumberULong = ErrorCodes.ERROR_SUCCESS;
|
||||
try
|
||||
{
|
||||
cmd.CommandType = CommandType.StoredProcedure;
|
||||
|
||||
cmd.Parameters.Add(new SqlParameter("@Id", SqlDbType.Int) { Value = id });
|
||||
|
||||
var errorNumber = new SqlParameter("@errorNumber", SqlDbType.Int) { Direction = ParameterDirection.Output };
|
||||
cmd.Parameters.Add(errorNumber);
|
||||
|
||||
var errorMessage = new SqlParameter("@errorMessage", SqlDbType.NVarChar, 255) { Direction = ParameterDirection.Output };
|
||||
cmd.Parameters.Add(errorMessage);
|
||||
|
||||
cmd.ExecuteNonQuery();
|
||||
if (null != errorNumber.Value && !DBNull.Value.Equals(errorNumber.Value))
|
||||
{
|
||||
if (0 != Convert.ToInt32(errorNumber.Value))
|
||||
{
|
||||
errorNumberULong = Convert.ToUInt64(errorNumber.Value);
|
||||
errorString = (string)errorMessage.Value;
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
//Concatenate any error string returned from the stored procedure call
|
||||
errorString = $"{ex.Message}; {errorString}";
|
||||
return errorNumberULong;
|
||||
}
|
||||
finally
|
||||
{
|
||||
cmd.Connection.Dispose();
|
||||
}
|
||||
|
||||
return errorNumberULong;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user