Added IDatabase interface and refactored to use it to handle database type - updated Installer to dynamically add databases to selector
This commit is contained in:
		
							
								
								
									
										16
									
								
								Oqtane.Server/Databases/LocalDbDatabase.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								Oqtane.Server/Databases/LocalDbDatabase.cs
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,16 @@ | ||||
| using Microsoft.EntityFrameworkCore; | ||||
| using Oqtane.Interfaces; | ||||
|  | ||||
| namespace Oqtane.Repository.Databases | ||||
| { | ||||
|     public class LocalDbDatabase : IDatabase | ||||
|     { | ||||
|         public string FriendlyName => "Local Database"; | ||||
|         public string Name => "LocalDB"; | ||||
|  | ||||
|         public DbContextOptionsBuilder UseDatabase(DbContextOptionsBuilder optionsBuilder, string connectionString) | ||||
|         { | ||||
|             return optionsBuilder.UseSqlServer(connectionString); | ||||
|         } | ||||
|     } | ||||
| } | ||||
							
								
								
									
										17
									
								
								Oqtane.Server/Databases/SqlServerDatabase.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								Oqtane.Server/Databases/SqlServerDatabase.cs
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,17 @@ | ||||
| using Microsoft.EntityFrameworkCore; | ||||
| using Oqtane.Interfaces; | ||||
|  | ||||
| namespace Oqtane.Repository.Databases | ||||
| { | ||||
|     public class SqlServerDatabase : IDatabase | ||||
|     { | ||||
|         public string FriendlyName => "SQL Server"; | ||||
|  | ||||
|         public string Name => "SqlServer"; | ||||
|  | ||||
|         public DbContextOptionsBuilder UseDatabase(DbContextOptionsBuilder optionsBuilder, string connectionString) | ||||
|         { | ||||
|             return optionsBuilder.UseSqlServer(connectionString); | ||||
|         } | ||||
|     } | ||||
| } | ||||
							
								
								
									
										17
									
								
								Oqtane.Server/Databases/SqliteDatabase.cs
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								Oqtane.Server/Databases/SqliteDatabase.cs
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,17 @@ | ||||
| using Microsoft.EntityFrameworkCore; | ||||
| using Oqtane.Interfaces; | ||||
|  | ||||
| namespace Oqtane.Repository.Databases | ||||
| { | ||||
|     public class SqliteDatabase : IDatabase | ||||
|     { | ||||
|         public string FriendlyName => Name; | ||||
|  | ||||
|         public string Name => "Sqlite"; | ||||
|  | ||||
|         public DbContextOptionsBuilder UseDatabase(DbContextOptionsBuilder optionsBuilder, string connectionString) | ||||
|         { | ||||
|             return optionsBuilder.UseSqlite(connectionString); | ||||
|         } | ||||
|     } | ||||
| } | ||||
		Reference in New Issue
	
	Block a user
	 Charles Nurse
					Charles Nurse