Это действительно сводится к тому, что вы пытаетесь построить.Вы просто играете, чтобы протестировать базу данных, или у вас есть конкретный проект / программа, которую вы пытаетесь создать?Доступ к базе данных должен обрабатываться так же, как любой другой проект.
Например, если вы используете базу данных для хранения сотрудников и хотите вернуть всех сотрудников с фамилией «Смит», вы можетесделать что-то вроде этого ( очень простой пример и не очень хороший дизайн ... просто пытаюсь показать, куда код пойдет, чтобы все заработало ):
public class Employee
{
public FirstName { get; set; }
public LastName { get; set; }
public Employee(string firstName, string lastName)
{
FirstName = firstName;
LastName = lastName;
}
}
public static class EmployeeFactory
{
public static IEnumerable<Employee> GetEmployeesNamedSmith(IObjectContainer db)
{
var employees = from Employee e in db
where e.LastName.Equals("Smith")
select e;
foreach (var emp in employees)
{
yield return emp;
}
}
}
В вашем основном приложении вы могли быесть что-то вроде этого:
public static void Main()
{
var config = Db4oEmbedded.NewConfiguration();
// code to create and add employees goes here.
// access employees that have Smith as the last name
using (var db = Db4oEmbedded.OpenFile(config, "database.db4o"))
{
foreach (var e in EmployeeFactory.GetEmployeesNamedSmith(db))
{
Console.WriteLine(e.FirstName + " " + e.LastName);
}
}
}
Отказ от ответственности: я не пробовал компилировать этот код и только баловался в db4o (прошло около 6 месяцев с тех пор, как я последний раз его трогал ... хотя я хотел бы попробоватьэто снова).
Надеюсь, это поможет каким-то образом.Я не уверен, что это то, что вы искали.