Что опции там для быстрого встроенного DB в.NET?

Я думаю, что стоит записать хорошее покрытие модульного теста для кода, что Вы собираетесь быть работой с путем в будущее. Например, когда Вы работаете на производственную компанию, путем записи качественных случаев модульного теста Вы просто делаете инвестиции времени, зная, что вся тяжелая работа, пишущий тестовые сценарии окупится и сделает Вашу жизнь легче по линии.

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

Мы можем все утверждать, что соблюдение твердых методов разработки программного обеспечения является ответственностью каждого разработчика. Однако ROI значит много для отдельных разработчиков, как он делает к управлению.

9
задан Vilx- 16 October 2009 в 13:34
поделиться

13 ответов

SQLite . Он небольшой и имеет отличную оболочку для .Net.

23
ответ дан 4 December 2019 в 05:56
поделиться

Или есть Esent, встроенная база данных, которая существует в каждой копии Windows. Прочтите об этом здесь: http://ayende.com/Blog/archive/2008/12/23/hidden-windows-gems-extensible-storage-engine.aspx

Если вы чувствуете себя смелым, я Мы собрали простой документ db PieDb (как в «easy as»).

11
ответ дан 4 December 2019 в 05:56
поделиться

Вы можете использовать SQL Server Compact Edition (входит в состав Visual Studio) или SQLite .

Есть много других, но они наиболее распространены.

Я большой поклонник SQLite, потому что он крошечный, простой и быстрый. Для него есть замечательный провайдер ADO.NET , который поддерживает Entity Framework.

8
ответ дан 4 December 2019 в 05:56
поделиться

Если вы настроены на использование встроенной БД, то, вероятно, лучшим вариантом будет SQL Server Compact Edition, за которым следует SQLite в качестве второго.

Если вы говорите об одной таблице, похоже, что встроенная БД может быть излишней, и вам может лучше подойти простой текстовый файл.

3
ответ дан 4 December 2019 в 05:56
поделиться

Вы можете создать массив своего класса, пометить его [Serializable] и просто использовать встроенные методы сериализации / десериализации для сохранения.

3
ответ дан 4 December 2019 в 05:56
поделиться

порт .NET SQLite находится по адресу http: // code. google.com/p/csharp-sqlite/. Это чистый .NET, поэтому вы можете превратить ILMerge в один .exe

1
ответ дан 4 December 2019 в 05:56
поделиться

Я второй голосую за SQLite. SQL Server CE слишком тяжел для любых встраиваемых целей, если вам не нужна простая синхронизация с центральной базой данных - тогда это фантастика.

2
ответ дан 4 December 2019 в 05:56
поделиться

Если это не обязательно должна быть SQL-совместимая база данных, я бы также посмотрел на Db4o. Db4o - это объектная база данных для Java и .NET. Версия .NET полностью написана на C #.

0
ответ дан 4 December 2019 в 05:56
поделиться

Если вы говорите об одной таблице, я не совсем понимаю, почему вы считаете, что ДОЛЖНЫ использовать реляционную базу данных для достижения своих целей. А как насчет одного файла?

Естественно, в зависимости от причины, по которой вам нужно хранить информацию, и способа связи данных, может быть причина, по которой вам понадобится база данных. Но вы должны подумать, действительно ли БД вам нужна в этом случае.

Реляционная база данных не должна БЫТЬ стандартом де-факто для хранения данных. Перед выбором СУБД следует рассмотреть множество альтернатив.

См., Например, сообщение mcintyre321.

4
ответ дан 4 December 2019 в 05:56
поделиться

Второй SQL Lite или простой XML-файл с функцией записи deflate для минимизации размера. Быстро и не так уж и плохо.

0
ответ дан 4 December 2019 в 05:56
поделиться

Однажды я исследовал ту же проблему. Из всех возможных кандидатов двое выглядели хорошо. Это SQLite и Firebird (firebirdsql.org). Но у firebird было больше возможностей, чем у SQLite.

UPD: Вот интересная информация о firebird + dotnet http://www.firebirdsql.org/dotnetfirebird/embedded/index.html

1
ответ дан 4 December 2019 в 05:56
поделиться

Для чего-то такого маленького и простого я, вероятно, выбрал бы XML, а не базу данных. Если вы абстрагируете код CRUD, вы можете позже изменить часть кода уровня данных, чтобы он использовал базу данных, когда данные увеличиваются в размере и сложности.

1
ответ дан 4 December 2019 в 05:56
поделиться

Berkeley DB также является хорошим выбором для встроенной базы данных. И есть библиотека , которая предоставляет для него интерфейс .NET 2.0.

1
ответ дан 4 December 2019 в 05:56
поделиться
Другие вопросы по тегам:

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