本文整理汇总了C#中Db4objects.Db4o.Internal.ClassMetadata.SetID方法的典型用法代码示例。如果您正苦于以下问题:C# ClassMetadata.SetID方法的具体用法?C# ClassMetadata.SetID怎么用?C# ClassMetadata.SetID使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Db4objects.Db4o.Internal.ClassMetadata
的用法示例。
在下文中一共展示了ClassMetadata.SetID方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ReadThis
public sealed override void ReadThis(Transaction trans, ByteArrayBuffer buffer)
{
int classCount = buffer.ReadInt();
InitTables(classCount);
ObjectContainerBase container = Container();
int[] ids = ReadMetadataIds(buffer, classCount);
ByteArrayBuffer[] metadataSlots = container.ReadSlotBuffers(trans, ids);
for (int i = 0; i < classCount; ++i)
{
ClassMetadata classMetadata = new ClassMetadata(container, null);
classMetadata.SetID(ids[i]);
_classes.Add(classMetadata);
_classMetadataByID.Put(ids[i], classMetadata);
byte[] name = classMetadata.ReadName1(trans, metadataSlots[i]);
if (name != null)
{
_classMetadataByBytes.Put(name, classMetadata);
}
}
ApplyReadAs();
}
示例2: CreateClassMetadata
public override bool CreateClassMetadata(ClassMetadata clazz, IReflectClass claxx
, ClassMetadata superClazz)
{
Write(Msg.CreateClass.GetWriterForString(SystemTransaction(), Config().ResolveAliasRuntimeName
(claxx.GetName())));
Msg resp = GetResponse();
if (resp == null)
{
return false;
}
if (resp.Equals(Msg.Failed))
{
// if the class can not be created on the server, send class meta to the server.
SendClassMeta(claxx);
resp = GetResponse();
}
if (resp.Equals(Msg.Failed))
{
if (ConfigImpl.ExceptionsOnNotStorable())
{
throw new ObjectNotStorableException(claxx);
}
return false;
}
if (!resp.Equals(Msg.ObjectToClient))
{
return false;
}
MsgObject message = (MsgObject)resp;
StatefulBuffer bytes = message.Unmarshall();
if (bytes == null)
{
return false;
}
bytes.SetTransaction(SystemTransaction());
if (!base.CreateClassMetadata(clazz, claxx, superClazz))
{
return false;
}
clazz.SetID(message.GetId());
clazz.ReadName1(SystemTransaction(), bytes);
ClassCollection().AddClassMetadata(clazz);
ClassCollection().ReadClassMetadata(clazz, claxx);
return true;
}
示例3: ReadThis
public override void ReadThis(Transaction trans, ByteArrayBuffer buffer)
{
var classCount = buffer.ReadInt();
InitTables(classCount);
var container = Container();
var ids = ReadMetadataIds(buffer, classCount);
var metadataSlots = container.ReadSlotBuffers(trans, ids);
for (var i = 0; i < classCount; ++i)
{
var classMetadata = new ClassMetadata(container, null);
classMetadata.SetID(ids[i]);
_classes.Add(classMetadata);
_classMetadataByID.Put(ids[i], classMetadata);
var name = classMetadata.ReadName1(trans, metadataSlots[i]);
if (name != null)
{
_classMetadataByBytes.Put(name, classMetadata);
}
}
ApplyReadAs();
}