@namespace Oqtane.Installer.Controls @implements Oqtane.Interfaces.IDatabaseConfigControl @inject IStringLocalizer Localizer @{ foreach (var field in _connectionStringFields) { var fieldId = field.Name.ToLowerInvariant(); var fieldType = (field.Name == "Pwd") ? "password" : "text"; field.Value = field.Value.Replace("{{Date}}", DateTime.UtcNow.ToString("yyyyMMddHHmm")); if (IsInstaller) { } else { } } } @code { [Parameter] public bool IsInstaller { get; set; } private readonly List _connectionStringFields = new() { new() {Name = "Server", FriendlyName = "Server", Value = "127.0.0.1", HelpText="Enter the database server"}, new() {Name = "Port", FriendlyName = "Port", Value = "3306", HelpText="Enter the port used to connect to the server"}, new() {Name = "Database", FriendlyName = "Database", Value = "Oqtane-{{Date}}", HelpText="Enter the name of the database"}, new() {Name = "Uid", FriendlyName = "User Id", Value = "", HelpText="Enter the username to use for the database"}, new() {Name = "Pwd", FriendlyName = "Password", Value = "", HelpText="Enter the password to use for the database"} }; public string GetConnectionString() { var connectionString = String.Empty; var server = _connectionStringFields[0].Value; var port = _connectionStringFields[1].Value; var database = _connectionStringFields[2].Value; var userId = _connectionStringFields[3].Value; var password = _connectionStringFields[4].Value; if (!String.IsNullOrEmpty(server) && !String.IsNullOrEmpty(database) && !String.IsNullOrEmpty(userId) && !String.IsNullOrEmpty(password)) { connectionString = $"Server={server};Database={database};Uid={userId};Pwd={password};"; } if (!String.IsNullOrEmpty(port)) { connectionString += $"Port={port};"; } return connectionString; } }