Модель БД для збереження даних
Тобто, модель «сирих» даних «рис. 3.1» в процесі синхронізації перетворюється в одну таблицю яку можна використовувати з додатком SQLite «рис. 3.2», що дозволить використовувати прив’язку даних до елементів управління та перекласти більшість CRUD (Create, Read, Update, Delete) операцій з БД на додаток SQLite, замість того щоб описувати їх самостійно «що описано в пряцях». Рис. 3.1. Схема моделі… Читати ще >
Модель БД для збереження даних (реферат, курсова, диплом, контрольна)
Структура даних, що описана вище, підходить для того щоб успішно десеріалізувати об'єкти отримані з сервера, але вона не підходить для збереження даних в локальній БД через складну структуру. Річ у тому, що SQLite лише імітує ORM «що описано на офіційному сайті додатку [16]», але не являється такою, тому вона може оперувати тільки простими типами даних. В нашому випадку всю структуру можна звести до однієї таблиці, яка виглядає наступним чином:
[Table («FeedItem»)].
class FeedItem: INotifyPropertyChanged.
{.
[PrimaryKey].
public string id { get; set; }.
public string title { get; set; }.
public string timestampUsec { get; set; }.
public string dateTime.
{.
get { return DataController. UnixTimeStampToDateTime (timestampUsec). ToString («HH:mm:ss dd.MM.yyyy»); }.
}.
public string href { get; set; }.
public string content { get; set; }.
public string author { get; set; }.
public string tagid { get; set; }.
public string tagName { get; set; }.
public string streamId { get; set; }.
public string streamName { get; set; }.
private bool _isReaded;
public bool isReaded.
{.
get { return _isReaded; }.
set { _isReaded = value; NotifyPropertyChanged (); }.
}.
public Visibility VisibilityIsReaded.
{.
get { return isReaded? Visibility. Collapsed: Visibility. Visible; }.
}.
public Brush ReadedForeground.
{.
get { return isReaded? new SolidColorBrush (Colors.Black): new SolidColorBrush (Colors.Blue); }.
}.
private bool _isStarred;
public bool isStarred.
{.
get { return _isStarred; }.
set { _isStarred = value; NotifyPropertyChanged (); }.
}.
public Symbol SymbolIsStarred.
{.
get { return isStarred? Symbol. SolidStar: Symbol. OutlineStar; }.
}.
private bool _isLiked;
public bool isLiked.
{.
get { return _isLiked; }.
set { _isLiked = value; NotifyPropertyChanged (); }.
}.
public string SymbolIsLikedStr.
{.
get { return isLiked? «U0000E00B»: «U0000E006»; }.
}.
}.
Тобто, модель «сирих» даних «рис. 3.1» в процесі синхронізації перетворюється в одну таблицю яку можна використовувати з додатком SQLite «рис. 3.2», що дозволить використовувати прив’язку даних до елементів управління та перекласти більшість CRUD (Create, Read, Update, Delete) операцій з БД на додаток SQLite, замість того щоб описувати їх самостійно «що описано в пряцях [16, 24, 26, 27]» .
Рис. 3.1. Схема моделі «сирих» даних (що приходять з сервера)
Рис. 3.2. Схема моделі локальної бази даних