Unity 6.3
0 онлайн 77 гостей 3 в системе
Вход

PropertyDatabase.TryLoad

Declaration

public bool TryLoad(ref Search.PropertyDatabaseRecordKey recordKey, out object value);

Параметры

Параметр Описание
recordKey Ключ записи.
значение Значение недвижимости.

Возвращаемое значение

логическое True, если запись найдена и действительна, false в противном случае.

Описание

Загружает одно свойство, уже разрядованное в объект.

// Load the value already deserialized.
var colorRecordKey = PropertyDatabase.CreateRecordKey("path/to/my/asset", "m_Color");
if (!propertyDatabase.TryLoad(colorRecordKey, out object colorObject))
    Assert.Fail("Failed to load color property.");
var color = (Color)colorObject;
Assert.AreEqual(new Color(1, 0, 1), color);

Дополнительные ресурсы: ,PropertyDatabase.CreateRecordKey,.

Declaration

public bool TryLoad(ref Search.PropertyDatabaseRecordKey recordKey, out Search.IPropertyDatabaseRecordValue value);

Параметры

Параметр Описание
recordKey Ключ записи.
значение Регистр свойства.

Возвращаемое значение

логическое True, если запись найдена и действительна, false в противном случае.

Описание

Загружает одно свойство, все еще содержащееся в записи.

Этот метод не десериализует значение. Вы должны десериализовать его сами, вызвав PropertyDatabase.GetObjectFromRecordValue.

// Load the record value to do a deserialization at the appropriate time.
var sizeRecordKey = PropertyDatabase.CreateRecordKey("path/to/my/asset", "m_Size");
if (!propertyDatabase.TryLoad(sizeRecordKey, out IPropertyDatabaseRecordValue sizeRecordValue))
    Assert.Fail("Failed to load size property.");
var size = propertyDatabase.GetValueFromRecord<int>(sizeRecordValue);
Assert.AreEqual(42, size);

Дополнительные ресурсы: ,PropertyDatabase.CreateRecordKey,.

Declaration

public bool TryLoad(ulong documentKey, out IEnumerable<object> data);

Параметры

Параметр Описание
documentKey Ключ документа.
данные Значения свойств документа.

Возвращаемое значение

логическое True, если запись найдена и действительна, false в противном случае.

Описание

Загружает все свойства документа, уже разрядившиеся в объекты.

// Load all values not associated with a document, already deserialized.
var nullDocumentKey = PropertyDatabase.CreateDocumentKey(null);
if (!propertyDatabase.TryLoad(nullDocumentKey, out IEnumerable<object> noDocumentProperties))
    Assert.Fail("Failed to load properties with no documents.");
Assert.IsNotEmpty(noDocumentProperties);
Assert.AreEqual("myDocs_", noDocumentProperties.First());

Дополнительные ресурсы: ,PropertyDatabase.CreateDocumentKey,.

Declaration

public bool TryLoad(ulong documentKey, out IEnumerable<IPropertyDatabaseRecord> records);

Параметры

Параметр Описание
documentKey Ключ документа.
записи Записи свойств документа.

Возвращаемое значение

логическое True, если запись найдена и действительна, false в противном случае.

Описание

Загружает все свойства документа, которые все еще содержатся в записях.

Этот метод не десериализует значения. Вы должны десериализовать их сами, вызвав PropertyDatabase.GetObjectFromRecordValue.

// Load all values associated with a document, not deserialized.
var myAssetDocumentKey = PropertyDatabase.CreateDocumentKey("path/to/my/asset");
if (!propertyDatabase.TryLoad(myAssetDocumentKey, out IEnumerable<IPropertyDatabaseRecord> myDocumentRecords))
    Assert.Fail("Failed to load records for my asset document.");
var deserializedValues = new Dictionary<PropertyDatabaseRecordKey, object>();
foreach (var myDocumentRecord in myDocumentRecords)
{
    var value = propertyDatabase.GetValueFromRecord<object>(myDocumentRecord.value);
    deserializedValues.Add(myDocumentRecord.key, value);
}
Assert.AreEqual(5, deserializedValues.Count);

Дополнительные ресурсы: ,PropertyDatabase.CreateDocumentKey,.