Я думаю, что ваша проблема - это mappedBy
значения в one
стороне OneToMany
отношений. Значение mappedBy
должно быть именем переменной на другой стороне . Таким образом, в ваших случаях вы можете сделать следующее:
mappedBy = "citizen"
на mappedBy = "a"
mappedBy = "citizen"
на mappedBy = "b"
[ 119] Я знаю, что сущность a, b, c - всего лишь пример, но вы должны следовать вышеприведенному шаблону при разработке отношений между вашими моделями.
При использовании VS 2008 и.NET 3.5 можно использовать SQL Server Компактный Выпуск. Это не действительно сервер вообще, это работает в - proc с Вашим приложением и обеспечивает основную базу данных SQL. Сами базы данных являются единственным .sdf файлом и развертываются с Вашим приложением. Так как это - часть платформы, это также означает, что нет никакой дополнительной установки. На самом деле Это не на самом деле часть платформы, но это легко распространяемо. Я использую SQL Server CE для персонального проекта, я в настоящее время продолжаю работать, и это оказалось большим до сих пор.
SQL Server Express - то, что Вы хотите. Это - свободный IIRC и легко масштабируется в полноценную SQL Server при необходимости.
Почему наклон Вы используете SQLite? Это работает над окнами. Быстрый запуск SQLite.
Также посмотрите здесь для того, чтобы заставлять это работать с.NET http://web.archive.org/web/20100208133236/http://www.mikeduncan.com/sqlite-on-dotnet-in-3-mins/
Таким образом, Вы могли использовать SQLite, если бы Вы хотели, но возможно поскольку другие указали, что SQL Express является более оптимальным вариантом, поскольку можно обновить до полного сервера, если Вы должны в будущем. Хотя от того, что Вы записали, что я не знаю, вероятно ли это.
Sqlite является определенно наилучшим вариантом для встроенной базы данных для устройства хранения данных приложения. Это свободно быстрый и надежный.
SQL-сервер Компактный Выпуск (*.sdf файлы). Достаточно маленький для Смартфонов, но также и доступный на всей платформе. Версию .net 2 назвали Мобильным SQL-сервером.
Вот сравнение между Компактным и Экспрессом.
Если не sqlserver экспресс, можно хотеть рассмотреть Microsoft SQL Server Desktop Engine (уменьшил масштаб версии sqlserver), который свободен в большинстве случаев. или MySQL, который также свободен. I'prefer mysql.
Можно использовать SQL, Облегченный с.NET. На самом деле, если Вы готовы сохранить свой код, таким образом, он может перевести в моно, который охватывает большинство 2.0 (3.5 все еще предстоящий), можно выполнить код Mac, также, если Вы придерживаетесь Облегченного SQL:
http://mono-project.com/Main_Page
Это действительно зависит от того, в каком количестве удара Вы нуждаетесь. SQL Express, которая была упомянута многочисленные времена в этом потоке, является SQL Server. Это имеет некоторые ограничения по полноценному SQL Server, но это - полный механизм SQL Server, таким образом, это не облегченная версия, если Вы не думаете, ограничивая базу данных 4 ГБ, делает это светом. Если Вам нужны более тяжелые сервисы как некоторое Создание отчетов, некоторая организация очередей сообщения (сервисный брокер), то SQL Express 2008 является Вашим созданием.
Для зажигалки в мире MS можно пойти с Компактным SQL. Как с Облегченным SQL, это ограничено в объеме, но Вы заявили о необходимости в легкой базе данных.
Если Вы действительно знакомы с Облегченным SQL, я не вижу оснований для не заголовка того направления. Добавьте фабрику сверх своего доступа к базе данных, на всякий случай Вы передумали. Затем Вы не должны будете разрывать свое целое приложение для переключения баз данных.
Я сказал бы Microsoft Access. Вам нужна лицензия хотя...
Я его еще не использовал, но если бы я создавал windows-приложение и нуждался в подобной функциональности, я бы использовал встроенную базу данных windows, которая уже есть на каждой коробке окон.