MemoDb: Cascades and Collections support
I’ve been implementing some new features and I think it’s ready for an alpha release. I’ll be uploading the files in codeplex.
To follow the MemoDb posts saga:
Now, MemoDb supports:
- Delete
- Collections
- EntityRef (for LinqToSql support)
- Cascade inserts
- Cascade delete on collections children (aka all-delete-orphans)
Delete
Pretty simple, it let you delete objects:
using (var s = memo.CreateSession())
{
var city= s.GetById<City>(1);
s.Delete(city);
s.Flush();
}
Cascade Inserts
You can configure MemoDb to insert new references by default:
var memo = new Memo(insertByCascadeByDefault: true)
Or you can specify the behaviour just for one relationship:
var memo = new Memo()
.Map<City>(c => c.CasacadeInsert(x => x.Country))
.Map<Country>();
Cascade Delete Orphans
You can configure MemoDb to delete collections children by cascade when the parent object is deleted by default:
var memo = new Memo(deleteOrphansByCascadeByDefault: true)
Or you can specify the behaviour just for one collection:
var memo = new Memo()
.Map<City>()
.Map<Country>(c => c.CasacadeDeleteOrphans(x => x.Cities));
Advertisement
Categories: C#, MemoDb
c#, database, databases, Linq, software design, Unit testing
