#.net #persistence #rapid-prototyping
#.net #настойчивость #быстрое прототипирование #постоянство
Вопрос:
Я ищу простой способ сохранения объектов при экспериментировании и создании макетных пользовательских интерфейсов или служб. Я уже знаю, какой ORM я в конечном итоге буду использовать позже при создании выпускаемого продукта, но я не хочу утруждать себя настройкой всего этого на данном этапе.
Я ищу что-то, что:
- имеет низкие требования к установке (в идеале, одна dll)
- имеет низкие требования к настройке (нет определений столбцов, нет сопоставлений XML, нет создания таблиц ..)
- имеет низкую производительность (на самом деле просто необходимо поддерживать 1 или 2 одновременных пользователя)
- сохраняет данные при перезапуске приложения
Чего я действительно хочу, так это чего-то вроде хэш-таблицы, которая выдерживает перезапуск приложения.
Какие инструменты вы сочли бы подходящими для этого? Какие подходы вы используете, когда хотите сохранить простые структуры данных без каких-либо помех?
Ответ №1:
Вы могли бы просто использовать встроенную поддержку сериализации фреймворка.
С точки зрения ваших требований:
- Нет требований к установке (уже в framework)
- Нет требований к настройке (предоставленные типы сериализуемы)
- Производительность не так хороша, как у большинства ORM, но все еще работает.
- Может сохранять данные в файлах или любом другом источнике, который может принимать поток
Ответ №2:
ну, будет сложно установить все эти флажки.
В прошлом я использовал SQLite, было довольно издевательски относиться к DBs.
Что касается сохранения, вы можете попробовать использовать собственную сериализацию Xml / JSON или протобуферы Google.
Лучше, если у вас есть модель домена для ваших данных, таким образом, вы можете легко удалить / восстановить из базовых данных (в простом файле дампа / xml / db).
таким образом, вы всегда будете работать с моделью предметной области, а не с базовыми данными. позже вы можете изменить лежащие в основе данные, но ваша модель домена останется прежней