public void Save() { var rowset = new Rowset(Schema.GetForTypedRow(typeof(MyPerzon))); rowset.LogChanges = true; for(var i=0; i<100; i++) { rowset.Insert( new MyPerzon { GDID = new GDID(1, 1, (ulong)i), Name = "Jeka Koshmar", Age = i }); } var qryBetween5060 = new Query("CRUD.LoadPerzonsInAgeSpan", typeof(MyPerzon)) { new Query.Param("fromAge", 50), new Query.Param("toAge", 60) }; var rs = store.LoadOneRowset(qryBetween5060); Assert.IsNotNull( rs ); Assert.AreEqual(0, rs.Count); store.Save(rowset); rowset.PurgeChanges(); rs = store.LoadOneRowset(qryBetween5060); Assert.IsNotNull( rs ); Assert.AreEqual(9, rs.Count); rowset[55]["Age"] = 900; //falls out of query rowset.Update(rowset[55]); rowset.Delete(rowset[59]); //physically deleted store.Save(rowset); rs = store.LoadOneRowset(qryBetween5060); Assert.IsNotNull( rs ); Assert.AreEqual(7, rs.Count); Assert.AreEqual(58, rs.First()["Age"]); Assert.AreEqual(51, rs.Last()["Age"]); }