public override void Read(ContentSchemaField schemaField, AssetField contentField, BsonValue bsonValue) { if (bsonValue is BsonBinaryData bsonBinary && bsonBinary.IsGuid) { contentField.Asset = ContentItemProxy.CreateAsset(bsonBinary.ToGuid()); } }
public static Asset FromMongo(this MongoAsset mongoAsset) { Asset asset = new Asset() { Id = mongoAsset.Id, CreatedAt = mongoAsset.CreatedAt, ModifiedAt = mongoAsset.ModifiedAt, PublishedAt = mongoAsset.PublishedAt, Version = mongoAsset.Version, Name = mongoAsset.Name, Alt = mongoAsset.Alt, Description = mongoAsset.Description, Slug = mongoAsset.Slug, Hash = mongoAsset.Hash, MimeType = mongoAsset.MimeType, Size = mongoAsset.Size, }; if (mongoAsset.Folder != null) { asset.Folder = ContentItemProxy.CreateAssetFolder(mongoAsset.Folder.Value); } foreach (var item in mongoAsset.Metaddata) { asset.SetMetadata((AssetMetadata)BsonSerializer.Deserialize(item.Value, AssetMetadataManager.Default.GetMetadataType(item.Key))); } return(asset); }
public override void Read(ContentSchemaField schemaField, ReferenceField contentField, BsonValue bsonValue) { if (bsonValue is BsonDocument bsonDocument) { if (bsonDocument[ReferenceField.IdField] != BsonNull.Value) { Guid targetId = bsonDocument[ReferenceField.IdField].AsGuid; string targetType = bsonDocument[ReferenceField.SchemaField].AsString; contentField.ContentItem = ContentItemProxy.CreateContentItem(targetId, targetType); } } }
public static AssetFolder ToModel(this MongoAssetFolder mongoAsset) { AssetFolder asset = new AssetFolder() { Id = mongoAsset.Id, CreatedAt = mongoAsset.CreatedAt, ModifiedAt = mongoAsset.ModifiedAt, Version = mongoAsset.Version, Name = mongoAsset.Name, }; if (mongoAsset.Parent != null) { asset.Parent = ContentItemProxy.CreateAssetFolder(mongoAsset.Parent.Value); } return(asset); }