Что я должен использовать? Я должен хранить данные, и это только должно быть на локальной машине. Я буду хранить все строковые переменные, и во многих столбцах.
Что является лучшим? Это даже была бы база данных?
Я бы порекомендовал db4o , механизм базы данных объектов. Это довольно просто, и на клиенте не требуется ни сервер, ни установка. Другой альтернативой может быть SQLite. Вы можете получить поставщика .NET здесь .
Правка
См. Руководство по db4o здесь .
Попробуйте < Button > < TextBlock > a < Bold > b c
.
В день 1 Да. TortoityHG (0.9.3 через Kinn Client загрузки на FogBugz) и TortoitySVN (1.6.7, Build 18415 - 64 Bit, 2010/01/22 17:55:06), кажется, играют вместе без проблем на Windows 7 x64.
Щелчок правой кнопкой мыши в проводнике предоставляет оба подменю, и накладки работают нормально для обоих типов репозиториев.
Я не слишком старался создать репозитарий обоих типов pf в одном и том же месте, но кажется, что Subversion не создаст репо Mercurial (Hg). Однако HG казалась счастливой создать репо там же, где и существующее репо SVN. Я не слишком долго проверял, правильно ли синхронизировались оба репо, так что будьте осторожны там. Проверь его, прежде чем использовать в гневе.
-121--2480454-Если вы просто хотите сохранить небольшой объем данных в довольно простой структуре и не собираетесь выполнять сложные запросы, рассмотрите XML-файл. Дополнительное программное обеспечение не требуется, и с ним можно легко работать с помощью LINQ to XML .
Вариант решения @ ChristopheD
s = 'TheLongAndWindingRoad'
pos = [i for i,e in enumerate(s+'A') if e.isupper()]
parts = [s[pos[j]:pos[j+1]] for j in xrange(len(pos)-1)]
print parts
-121--865379- Я настоятельно рекомендую проверить структуру сериализации. Это даже не близко к производительности базы данных, но, если вы не говорите о большом количестве данных, это имеет примерно на 100% меньше накладных расходов. Сериализация объектов в файл в .net - это игра ребенка:
XmlSerializer serializer = new XmlSerializer(typeof(myObjectType));
using(FileStream stream = new FileStream("file", FileMode.Create, FileAccess.Write)
{
serializer.Serialize(stream, myObject);
}
Все!
Чтение назад в значительной степени наоборот. LINQ предоставляет еще больше возможностей. Опять же, это даже не близко к БД с точки зрения производительности, но я видел много, много реализаций, в которых база данных была чрезвычайно переполнена для объема хранимых данных. Очевидно, что если у вас есть явная необходимость масштабировать и т.д., вы захотите спланировать это. Правильный инструмент для правильной проблемы и все такое.
-121--2663110-XML может вместо вашего требования!
Я бы рекомендовал использовать sqlite, это очень быстрая база данных только для файлов, с возможностью встраивания, с широкими возможностями. У меня есть легкий ORM с привязкой к C#, который абстрагирует и упрощает доступ к ней. Вот живая демонстрация веб-сервиса с использованием sqlite.
О да, db4o также является хорошим выбором, для которого у меня также есть привязка к базе данных C#, которая поддерживает автоматические свойства C# (так как стандартный поставщик db4o не поддерживает) и другие общие сценарии доступа к данным.
SQL Server Compact 3.5 SP1 не требует установки (вам просто нужно доставить файлы .dll, хотя проверьте лицензионное соглашение, если это разрешено) и довольно просто использовать.
Вам следует обратить внимание на SQLite, если вы ищете СУБД или что-то вроде MongoDB, если вы храните объекты или что-то подобное.
Я настоятельно рекомендую проверить структуру сериализации. Это даже не близко к производительности базы данных, НО, если вы не говорите о большом количестве данных, у нее примерно на 100% меньше накладных расходов. Сериализация объектов в файл в .net - детская игра:
XmlSerializer serializer = new XmlSerializer(typeof(myObjectType));
using(FileStream stream = new FileStream("file", FileMode.Create, FileAccess.Write)
{
serializer.Serialize(stream, myObject);
}
Вот и все!
Обратное чтение - это как раз противоположное. LINQ предоставляет еще больше возможностей. Опять же, это даже не близко к БД с точки зрения производительности, но я видел много-много реализаций, в которых база данных была чрезмерно избыточной для объема хранимых данных. Очевидно, что если у вас есть явная потребность в масштабировании и т. Д., Вы захотите спланировать это. Правильный инструмент для правильной задачи и все такое.