Исходный код вики Сценарии
Версия 2.1 от Alexandr Fokin на 2022/01/23 12:16
Последние авторы
author | version | line-number | content |
---|---|---|---|
1 | 1) | ||
2 | |||
3 | Pushing UI changes from Blazor Server to browser on server raised events | ||
4 | (Отправка изменений пользовательского интерфейса с сервера Blazor в браузер при возникновении событий сервера) | ||
5 | [[https:~~/~~/swimburger.net/blog/dotnet/pushing-ui-changes-from-blazor-server-to-browser-on-server-raised-events>>url:https://swimburger.net/blog/dotnet/pushing-ui-changes-from-blazor-server-to-browser-on-server-raised-events]] | ||
6 | |||
7 | mikoskinen/Blazor.EventAggregator | ||
8 | [[https:~~/~~/github.com/mikoskinen/Blazor.EventAggregator>>url:https://github.com/mikoskinen/Blazor.EventAggregator]] | ||
9 | Дополнение: После просмотра исходников считаю, что | ||
10 | лучше реализовать свое решение на основе методов OnInitialized(Async) для подписки и Dispose(Async) для отписка от события | ||
11 | |||
12 | |||
13 | 2) Проблема внедрения зависимостей через конструктор | ||
14 | |||
15 | Can we talk about constructor injection now that partial classes are here? #18088 | ||
16 | [[https:~~/~~/github.com/dotnet/aspnetcore/issues/18088>>url:https://github.com/dotnet/aspnetcore/issues/18088]] | ||
17 | |||
18 | Возможное решение - собственная реализация IComponentActivator | ||
19 | |||
20 | Blazor: Implement IComponentActivator to get components from DI | ||
21 | [[https:~~/~~/github.com/abpframework/abp/issues/5527>>url:https://github.com/abpframework/abp/issues/5527]] | ||
22 | |||
23 | [[https:~~/~~/github.com/abpframework/abp/blob/48c52625f4c4df007f04d5ac6368b07411aa7521/framework/src/Volo.Abp.AspNetCore.Components/Volo/Abp/AspNetCore/Components/DependencyInjection/ServiceProviderComponentActivator.cs>>url:https://github.com/abpframework/abp/blob/48c52625f4c4df007f04d5ac6368b07411aa7521/framework/src/Volo.Abp.AspNetCore.Components/Volo/Abp/AspNetCore/Components/DependencyInjection/ServiceProviderComponentActivator.cs]] | ||
24 | |||
25 | !Некоторые компоненты могут не работать при использовании самодельного внедрения. Поэтому для них приходится использовать атрибут Inject. | ||
26 | |||
27 | |||
28 | 3) Открыть новую вкладку | ||
29 | How can I open a new window | ||
30 | [[https:~~/~~/stackoverflow.com/questions/62769031/how-can-i-open-a-new-window-without-using-js>>url:https://stackoverflow.com/questions/62769031/how-can-i-open-a-new-window-without-using-js]] | ||
31 | |||
32 | |||
33 | 4) Работа с файлами | ||
34 | |||
35 | Загрузка файлов: | ||
36 | |||
37 | Отправка файлов в ASP.NET Core Blazor | ||
38 | [[https:~~/~~/docs.microsoft.com/ru-ru/aspnet/core/blazor/file-uploads?view=aspnetcore-5.0&pivots=webassembly>>url:https://docs.microsoft.com/ru-ru/aspnet/core/blazor/file-uploads?view=aspnetcore-5.0&pivots=webassembly]] | ||
39 | |||
40 | Для Net.Core 3.1 | ||
41 | SteveSandersonMS/BlazorInputFile (Archived) | ||
42 | [[https:~~/~~/github.com/SteveSandersonMS/BlazorInputFile>>url:https://github.com/SteveSandersonMS/BlazorInputFile]] | ||
43 | |||
44 | Скачивание файла: | ||
45 | Для скачивания файла можно сделать endpoint - api controller и кнопку, которая перенаправляет на него. | ||
46 | Можно использовать NavigationManager. |