add defensive logic to handle scenario where a tenant connection string does not exist in appsettings.json
This commit is contained in:
parent
077343ca20
commit
85f9597f2c
|
@ -398,7 +398,7 @@ namespace Oqtane.Infrastructure
|
|||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
result.Message = "An Error Occurred Executing Upgrade Logic. " + ex.ToString();
|
||||
result.Message = "An Error Occurred Executing Upgrade Logic On Tenant " + tenant.Name + ". " + ex.ToString();
|
||||
_filelogger.LogError(Utilities.LogMessage(this, result.Message));
|
||||
}
|
||||
}
|
||||
|
@ -468,7 +468,7 @@ namespace Oqtane.Infrastructure
|
|||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
result.Message = "An Error Occurred Installing " + moduleDefinition.Name + " Version " + versions[i] + " - " + ex.ToString();
|
||||
result.Message = "An Error Occurred Installing " + moduleDefinition.Name + " Version " + versions[i] + " On Tenant " + tenant.Name + " - " + ex.ToString();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -45,13 +45,20 @@ namespace Oqtane.Repository
|
|||
Tenant tenant = _tenantManager.GetTenant();
|
||||
if (tenant != null)
|
||||
{
|
||||
_connectionString = _config.GetConnectionString(tenant.DBConnectionString)
|
||||
.Replace($"|{Constants.DataDirectory}|", AppDomain.CurrentDomain.GetData(Constants.DataDirectory)?.ToString());
|
||||
_databaseType = tenant.DBType;
|
||||
_connectionString = _config.GetConnectionString(tenant.DBConnectionString);
|
||||
if (_connectionString != null)
|
||||
{
|
||||
_connectionString = _connectionString.Replace($"|{Constants.DataDirectory}|", AppDomain.CurrentDomain.GetData(Constants.DataDirectory)?.ToString());
|
||||
_databaseType = tenant.DBType;
|
||||
}
|
||||
else
|
||||
{
|
||||
// tenant connection string does not exist in appsettings.json
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (!String.IsNullOrEmpty(_databaseType))
|
||||
if (!string.IsNullOrEmpty(_databaseType))
|
||||
{
|
||||
var type = Type.GetType(_databaseType);
|
||||
ActiveDatabase = Activator.CreateInstance(type) as IDatabase;
|
||||
|
|
|
@ -93,7 +93,15 @@ namespace Oqtane.Repository
|
|||
public int ExecuteNonQuery(string connectionString, string databaseType, string query)
|
||||
{
|
||||
var db = GetActiveDatabase(databaseType);
|
||||
return db.ExecuteNonQuery(GetConnectionString(connectionString), query);
|
||||
var connectionstring = GetConnectionString(connectionString);
|
||||
if (connectionstring != null)
|
||||
{
|
||||
return db.ExecuteNonQuery(GetConnectionString(connectionString), query);
|
||||
}
|
||||
else
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
public string GetScriptFromAssembly(Assembly assembly, string fileName)
|
||||
|
|
Loading…
Reference in New Issue
Block a user