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,.