UpdateSettings bugfix
ISettingControl introduction
This commit is contained in:
		| @ -1,4 +1,5 @@ | ||||
| @namespace Oqtane.Modules.Admin.Modules | ||||
| @using Oqtane.Interfaces | ||||
| @inherits ModuleBase | ||||
| @inject NavigationManager NavigationManager | ||||
| @inject IThemeService ThemeService | ||||
| @ -137,7 +138,7 @@ | ||||
|                 builder.AddComponentReferenceCapture(1, inst => { _settings = Convert.ChangeType(inst, _settingsModuleType); }); | ||||
|                 builder.CloseComponent(); | ||||
|             }; | ||||
|         } | ||||
|        } | ||||
|     } | ||||
|  | ||||
|     private async Task SaveModule() | ||||
| @ -162,15 +163,16 @@ | ||||
|         module.Permissions = _permissionGrid.GetPermissions(); | ||||
|         await ModuleService.UpdateModuleAsync(module); | ||||
|  | ||||
|         if (_settingsModuleType != null) | ||||
|          | ||||
|         if (_settings is ISettingsControl control) | ||||
|         { | ||||
|             var moduleType = Type.GetType(ModuleState.ModuleType); | ||||
|             if (moduleType != null) | ||||
|             { | ||||
|                 moduleType.GetMethod("UpdateSettings")?.Invoke(_settings, null); // method must be public in settings component | ||||
|             } | ||||
|              await control.UpdateSettings(); | ||||
|         } | ||||
|         else | ||||
|         { | ||||
|             // Compatibility 2.0 fallback | ||||
|             _settings?.GetType().GetMethod("UpdateSettings")?.Invoke(_settings, null); // method must be public in settings component | ||||
|         } | ||||
|  | ||||
|         NavigationManager.NavigateTo(NavigateUrl()); | ||||
|     } | ||||
|  | ||||
|  | ||||
		Reference in New Issue
	
	Block a user
	 Pavel Vesely
					Pavel Vesely