Не отображаются картинки MAUI Blazor
столкнулся с такой проблемой: когда запускаю программу на WindowsMachine - картинки отображаются, но когда запускаю на AndroidEmulator, то картинок нет. на хосте располагаются картинки, например:
PreviewImage":{"ImageUri":"images/1.jpg")
в razor код выглядит так:
img src="@image.ImageUri" alt="Фото зала" class="gallery-image" />
Может знает кто, в чем может быть проблема? Заранее спасибо.
Ответы (1 шт):
app.UseStaticFiles();вProgram.csнеобходимо добавитьВажно также убедиться, что картинки лежат в папке
wwwroot/images/— только тогда они будут доступны из Razor-компонента.Попробуйте явно указать путь через хост-машину:
<img src="http://10.0.2.2:5000/images/1.jpg" alt="Фото зала" class="gallery-image" />
10.0.2.2— это специальный IP-адрес, по которому Android-эмулятор обращается кlocalhostхоста.
вот ссылки с en.SO
How to display local image as well as resources image in .Net MAUI Blazor Тут предлагается разбор способов отображения изображений из
AppDataDirectoryи ресурсов (Resources/Raw) в MAUI Blazor. Интересный пример с расширениемBlazorWebViewи использованиемCompositeFileProvider— позволяет отображать файлы с устройства через обычный<img src="..." />..Net Maui Android - How to load image from DCIM folder direct - without a picker Тут показывают как загрузить изображения прямо из системной папки Android (
DCIM/) без диалогов выбора. как получить путь, считать файл и установитьImageSource...
Если нужен доступ к файлам не из wwwroot, а из локального хранилища устройства, обратите внимание на эти подходы — они работают и на Android.