Сохранение пользовательских настроек в Silverlight

Основываясь на ваших примерах, вы можете использовать это регулярное выражение,

^\d+(?:'(?: +\d+"(?: +\d+\/\d+)?)?|")$

Объяснение:

  • ^ - Начало ввода
  • \d+ - одна или несколько цифр
  • (?:' - группа без захвата, за которой следует одинарная кавычка
  • (?: - запуск группы без захвата
  • [115 ] - соответствует одному или нескольким пробелам, за которыми следуют одна или несколько цифр, за которыми следует двойная кавычка
  • (?: +\d+\/\d+)? - соответствует одному или нескольким пробелам, за которыми следуют одна или несколько цифр, затем буквенный /, затем снова одна или несколько цифр и целое из него является необязательным, поскольку он помещается в группу без захвата, за которой следует ?
  • )? - закрытие предыдущей группы без захвата, и ? означает, что даже эта группа является необязательной
  • [1121 ] |") - Чередование со вспомогательным регистром, в котором после числа может следовать только двойная кавычка и закрытие группы
  • $ - Конец ввода

Demo

8
задан Community 23 May 2017 в 11:45
поделиться

3 ответа

После дополнительных исследований и реализации моей собственной персистентности настроек на основе файлов XML с использованием IsolatedStorage , я обнаружил класс IsolatedStorageSettings и IsolatedStorageSettings .ApplicationSettings , который представляет собой набор ключей / значений специально для хранения пользовательских настроек приложения.

Теперь все это кажется очевидным. Конечно, в долгосрочной перспективе механизм резервного копирования и восстановления настроек с использованием серверной базы данных был бы хорошим усовершенствованием этого сохранения настроек на стороне клиента.

2
ответ дан 6 December 2019 в 00:08
поделиться

Если для вас важно, чтобы пользователи имели доступ к своим предпочтениям в автономном режиме, то, похоже, вам подходит изолированное хранилище. Если более важно, чтобы пользователи могли сохранять настройки, даже если они отключили изолированное хранилище (это действительно проблема? У меня возникнет соблазн позвонить по этому поводу в YAGNI, но я не очень разбираюсь в платформе Silverlight). .) тогда вам нужно разместить базу данных. Если оба важны, то вы, вероятно, смотрите на какое-то гибридное решение; используя изолированное хранилище, если оно доступно, затем возвращаясь к базе данных.

Другими словами, я думаю, что потребности вашего приложения более важны, чем некоторая абстрактная лучшая практика.

1
ответ дан 6 December 2019 в 00:08
поделиться

Я думаю, что в общем случае по умолчанию будет храниться на сервере; мы можем делать это только в том случае, если есть конкретные веские причины пытаться хранить данные на клиенте. Чем больше вы можете рассчитывать на хранение в среде вы можете Чем больше вы контролируете, тем больше вы рискуете.

С учетом сказанного и ставя себя на сторону аргумента «база данных», я бы спросил, какова обратная сторона базы данных? Вы упомянули об использовании XML - ваши данные только частично структурированы? Если так, почему бы не хранить XML в базе данных SQL? Создание чего-то такого простого, как правило, не считается «бременем» по большинству стандартов. Простой веб-сервис может выступать посредником между вашим клиентом Silverlight и базой данных настроек.

почему бы не хранить XML в базе данных SQL? Создание чего-то такого простого, как правило, не считается «бременем» по большинству стандартов. Простой веб-сервис может выступать посредником между вашим клиентом Silverlight и базой данных настроек.

почему бы не хранить XML в базе данных SQL? Создание чего-то такого простого, как правило, не считается «бременем» по большинству стандартов. Простой веб-сервис может выступать посредником между вашим клиентом Silverlight и базой данных настроек.

1
ответ дан 6 December 2019 в 00:08
поделиться
Другие вопросы по тегам:

Похожие вопросы: