示例#1
0
        private void UnbindAll(IInternalObjectContainer container)
        {
            Db4objects.Db4o.Internal.Transaction transaction = container.Transaction;
            // FIXME should that ever happen?
            if (transaction == null)
            {
                return;
            }
            IReferenceSystem referenceSystem = transaction.ReferenceSystem();

            referenceSystem.TraverseReferences(new _IVisitor4_95(this));
        }
示例#2
0
		public ObjectReference Bind2(Transaction trans, ObjectReference oldRef, object obj
			)
		{
			int id = oldRef.GetID();
			trans.RemoveReference(oldRef);
			ObjectReference newRef = new ObjectReference(ClassMetadataForObject(obj), id);
			newRef.SetObjectWeak(this, obj);
			newRef.SetStateDirty();
			trans.ReferenceSystem().AddExistingReference(newRef);
			return newRef;
		}