Сегодня я имею дело с проблемой сохранения массива байтов в базе данных SQLite. Когда я сохраняю базу [] в databse, это похоже на это свойство, содержащее этот массив, но на самом деле оно не сохраняется в базе данных, когда я перезапускаю приложение на устройстве. Может быть, мне нужно преобразовать байт [] в базу 64, прежде чем поместить его в базу данных? Если да, то как я могу это сделать? Также, может быть, есть другой способ сохранить базу данных sqlite, не преобразовывая в base64?Формы Xamarin, как сохранить байт [] в базу данных SQLite?
Это мой класс объекта:
public class Unit
{
[PrimaryKey, AutoIncrement]
public int Id { get; set; }
public bool IsStarted { get; set; }
public byte[] CImage { get; set; }
}
Здесь я выбрать изображение из галереи и установите привязываемое значение:
IGalleryImageService galleryService = Xamarin.Forms.DependencyService.Get<IGalleryImageService>();
galleryService.ImageSelected += (o, imageSourceEventArgs) =>
{
ActiveP.CImageBindable = imageSourceEventArgs.ImageSource;
MemoryStream st = new MemoryStream(imageSourceEventArgs.ImageSource);
ImageSource imgSource = ImageSource.FromStream(() => st);
(ActiveP.Page as PTemplate).CImage.Source = imgSource;
};
galleryService.SelectImage();
вот мой другой класс Unit, где я обновить свою базу данных или вставка объектов в базу данных:
private void UpdateObjectToDB()
{
PUnit pUinit = new PUnit()
{
Id = this.Id,
IsStarted = this.IsStarted,
CImage = this.CImage
};
App.database.Update(pUinit);
}
public int InsertObjectToDB()
{
PUnit pUnit = new PUnit()
{
IsStarted = this.IsStarted,
CCImage = this.CImage
};
return App.database.AddItem(pUnit);
}
Где мне нужно преобразовать и как реализовать это? Благодарим вас за ответы или предложения.
Вот учебник, который включает в себя, как сохранить 'байт []' в базу данных SQLite: https://stackoverflow.com/questions/41337487/how -в-загрузка-изображения из-URL-и-сохранить-он-к-а-локального-SQLITE-базы данных/41337488 # 41337488 –