Convert Database projects so they build installable Packages rather than deploy to bin and modify installation to deploy Databases on demand as needed.
This commit is contained in:
		| @ -1,29 +1,11 @@ | ||||
| using System; | ||||
| using Oqtane.Interfaces; | ||||
|  | ||||
| namespace Oqtane.Shared | ||||
| { | ||||
|     public class InstallConfig | ||||
|     { | ||||
|         private IOqtaneDatabase _database; | ||||
|  | ||||
|         public string ConnectionString { get; set; } | ||||
|         public string DatabaseType { get; set; } | ||||
|  | ||||
|         public IOqtaneDatabase Database | ||||
|         { | ||||
|             get | ||||
|             { | ||||
|                 if (_database == null) | ||||
|                 { | ||||
|                     var type = Type.GetType(DatabaseType); | ||||
|                     _database = Activator.CreateInstance(type) as IOqtaneDatabase; | ||||
|                 } | ||||
|  | ||||
|                 return _database; | ||||
|             } | ||||
|         } | ||||
|  | ||||
|         public string DatabasePackage { get; set; } | ||||
|         public string Aliases { get; set; } | ||||
|         public string TenantName { get; set; } | ||||
|         public bool IsNewTenant { get; set; } | ||||
|  | ||||
| @ -1,61 +0,0 @@ | ||||
| using System; | ||||
| using System.Collections.Generic; | ||||
| using System.Data; | ||||
| using Microsoft.EntityFrameworkCore; | ||||
| using Microsoft.EntityFrameworkCore.Migrations.Operations; | ||||
| using Microsoft.EntityFrameworkCore.Migrations.Operations.Builders; | ||||
| using Oqtane.Interfaces; | ||||
| using Oqtane.Models; | ||||
|  | ||||
| namespace Oqtane.Shared | ||||
| { | ||||
|     public abstract class OqtaneDatabaseBase : IOqtaneDatabase | ||||
|     { | ||||
|         protected OqtaneDatabaseBase(string name, string friendlyName) | ||||
|         { | ||||
|             Name = name; | ||||
|             FriendlyName = friendlyName; | ||||
|         } | ||||
|  | ||||
|         public  string FriendlyName { get; } | ||||
|  | ||||
|         public string Name { get; } | ||||
|  | ||||
|         public abstract string Provider { get; } | ||||
|  | ||||
|         public abstract string TypeName { get; } | ||||
|  | ||||
|         public abstract OperationBuilder<AddColumnOperation> AddAutoIncrementColumn(ColumnsBuilder table, string name); | ||||
|  | ||||
|         public virtual string ConcatenateSql(params string[] values) | ||||
|         { | ||||
|             var returnValue = String.Empty; | ||||
|             for (var i = 0; i < values.Length; i++) | ||||
|             { | ||||
|                 if (i > 0) | ||||
|                 { | ||||
|                     returnValue += " + "; | ||||
|                 } | ||||
|                 returnValue += values[i]; | ||||
|             } | ||||
|  | ||||
|             return returnValue; | ||||
|         } | ||||
|  | ||||
|         public abstract int ExecuteNonQuery(string connectionString, string query); | ||||
|  | ||||
|         public abstract IDataReader ExecuteReader(string connectionString, string query); | ||||
|  | ||||
|         public virtual string RewriteName(string name) | ||||
|         { | ||||
|             return name; | ||||
|         } | ||||
|  | ||||
|         public virtual void UpdateIdentityStoreTableNames(ModelBuilder builder) | ||||
|         { | ||||
|  | ||||
|         } | ||||
|  | ||||
|         public abstract DbContextOptionsBuilder UseDatabase(DbContextOptionsBuilder optionsBuilder, string connectionString); | ||||
|     } | ||||
| } | ||||
		Reference in New Issue
	
	Block a user
	 Charles Nurse
					Charles Nurse