Я использую дизайн MVVM
и пытаюсь извлечь "изображение" из моей базы данных, используя привязку. «Фотография» сохраняется в базе данных как «photo.png».
Я создал локальную папку, которую приложение iPhone & Android может извлечь из локального ресурса.
Когда я жестко кодирую изображение, строка кода выглядит так:
<Image Source="{local:ImageResource GSUACM.ProfileImages.gsu_logo.png}" VerticalOptions="Center" HeightRequest="64" />
Но при попытке использовать привязку для извлечения из базы данных я предположил, что мне нужно вернуть привязку в виде строки.
Моя привязка в моем файле XAML: <Image Source="{Binding someImage}"
. Пользователь создается сразу после входа в приложение. Первоначальный запрос извлекает имя, пароль, изображение и т. Д. c и сохраняет их как глобальную переменную.
В модели представления я создал get / set для "someImage"
public ImageSource someImage { get; set; }
Перед установкой привязки я связал «изображение» с «путем». Путь:
String pathName = "local:ImageResource GSUACM.ProfileImage."
И, кроме того, я установил someImage
в глобальную переменную
this.someImage = pathName + GlobalVars.User.ProfileImage;
После распечатки someImage
в консоли указан правильный путь, но он указан как URI.
Uri: local:ImageResource GSUACM.ProfileImage.rat.png
, и программа далее заявляет:
ImageLoaderSourceHandler: Image data was invalid: Xamarin.Forms.StreamImageSource
Я ошибаюсь, думая, что могу объединить строки, и это будет работать как путь?