コード例 #1
0
        public void TestIndexingLowLevel()
        {
            LocalObjectContainer container     = Fixture().FileSession();
            ClassMetadata        classMetadata = container.ClassMetadataForReflectClass(container.Reflector().ForClass(typeof(Item)));
            FieldMetadata        fieldMetadata = classMetadata.FieldMetadataForName("_asByte");

            Assert.IsTrue(fieldMetadata.CanLoadByIndex(), "EnumTypeHandler should be indexable.");
            BTree index = fieldMetadata.GetIndex(container.SystemTransaction());

            Assert.IsNotNull(index, "No btree index found for enum field.");
        }
コード例 #2
0
        public void TestIndexingLowLevel()
        {
            LocalObjectContainer container     = Fixture().FileSession();
            ClassMetadata        classMetadata = container.ClassMetadataForReflectClass(container.Reflector().ForClass(typeof(ValueTypeHolder)));
            FieldMetadata        fieldMetadata = classMetadata.FieldMetadataForName("Value");

            Assert.IsTrue(fieldMetadata.CanLoadByIndex(), WithTypeName("Typehandler for type {0} should be indexable."));
            BTree index = fieldMetadata.GetIndex(container.SystemTransaction());

            Assert.IsNotNull(index, WithTypeName("No btree index found for field of type {0} ."));
        }
コード例 #3
0
 private void CheckInstanceOfCompare()
 {
     if (_member is ICompare)
     {
         _member = ((ICompare)_member).Compare();
         LocalObjectContainer stream = Container();
         _classMetadata = stream.ClassMetadataForReflectClass(stream.Reflector().ForObject
                                                                  (_member));
         _key = stream.GetID(Transaction(), _member);
         if (_key == 0)
         {
             SetBytes(null);
         }
         else
         {
             SetBytes(stream.ReadBufferById(Transaction(), _key));
         }
     }
 }
コード例 #4
0
 private Db4objects.Db4o.Internal.ClassMetadata ClassMetadata(LocalObjectContainer
                                                              container)
 {
     return(container.ClassMetadataForReflectClass(container.Reflector().ForClass(_clazz
                                                                                  )));
 }
コード例 #5
0
ファイル: FieldIndexAssert.cs プロジェクト: pondyond/db4o
 private ClassMetadata ClassMetadata(LocalObjectContainer
                                     container)
 {
     return(container.ClassMetadataForReflectClass(container.Reflector().ForClass(_clazz
                                                                                  )));
 }