Я новичок в Блазоре. Я пытаюсь понять, как это работает. У нас есть несколько интерфейсов и существующий веб-API ASP.NET Core (чистая архитектура).
Как лучше всего добавить несколько веб-приложений Blazor в существующий веб-API ASP.NET Core?
Я имею в виду, что у меня есть решение для API ядра .net. Как добавить blazor в решения? У меня несколько интерфейсов. Добавляю ли я в решения несколько проектов веб-приложений blazor. Или мне нужно добавить в решения несколько проектов blazor webassambly? Blazor будет использовать API для получения данных
Вы добавляете проект Blazor (WASM или сервер) так же, как и любой другой проект: File > New > Project
в Visual Studio .......
Что лучше использовать: Wasm или сервер?
Это зависит от того, какой у вас сценарий? WASM: запускается в браузере, обычно немного быстрее (после загрузки) – ОДНАКО: время начальной загрузки выше (большая первоначальная загрузка) и больше усилий для доступа к данным и/или ресурсам сервера; Сервер: работает на сервере, прямой доступ ко всему (базе данных, файловой системе и т. д.), нет времени начальной загрузки - НО всегда требуется подключение к серверу, нет поддержки автономной работы. Итак: какой из них лучше соответствует вашим потребностям?
Данные всегда будут доставляться через API. Интерфейсу не нужны подключения к базе данных или файловой системе. Но я хочу, чтобы интерфейс загружался быстро
Я не уверен, чего вы хотите, но в этом моем репозитории показано, как создать решение с различными приложениями и серверными API. github.com/ShaunCurtis/Blazr.Demo. Загрузите решение «Погода».
Спасибо Шону Кертису за ответ и репозиторий. Завтра посмотрю ваш репозиторий.
Также большое спасибо Marc_s за то, что он мне помог.
blazor предназначен для разработчиков, которые пытаются использовать C# вместо js, чтобы мы могли думать, что он используется для внешнего интерфейса. Поскольку у вас уже есть внешние приложения и API для предоставления данных, я боюсь, что вы пытаетесь выполнить миграцию из других внешних приложений или пытаетесь начать использовать blazor для создания новых внешних приложений. У Blazor есть веб-сборка и сервер до .net 8, а в .net 8 у нас есть веб-приложение blazor для замены сервера blazor. Веб-сборку Blazor можно распознать как аналогичную другой платформе SPA, такой как React и Angular, сервер/веб-приложение blazor отображает html-контент на стороне сервера.
Как лучше всего добавить несколько веб-приложений Blazor в существующий веб-API ASP.NET Core?
Как сказал marc_s, лучше создать проект spreate blazor внутри одного и того же решения, чтобы удовлетворить ваши требования.
Тогда эти проекты blazor могли бы использовать httpclient для вызова веб-API вместо объединения всех клиентских проектов в одном проекте веб-API, что может затруднить поддержку проекта в дальнейшем.
Кроме того, выбор проекта Blazor также зависит от ваших реальных требований. Подробнее о том, в чем отличие и как его выбрать, вы можете прочитать в этой статье.
Чтобы узнать, как использовать httpclient внутри веб-приложения blazor, я предлагаю вам обратиться к этой статье.
Спасибо Брандо за ответ.
Что вы подразумеваете под добавлением веб-приложения Blazor в API? Любое количество Blazor (или любых других приложений) может вызывать любой API — никакого «добавления к API» или чего-то еще…..