2021-05-12 18:56:18 +02:00

67 lines
1.4 KiB
C#

using Manager.Interfaces.DTO;
using MongoDB.Bson.Serialization.Attributes;
using System;
using System.Collections.Generic;
using System.Text;
namespace Manager.Interfaces.Models
{
/// <summary>
/// Resource Information
/// </summary>
public class Resource
{
[BsonId]
[BsonRepresentation(MongoDB.Bson.BsonType.ObjectId)]
public string Id { get; set; }
[BsonElement("Type")]
[BsonRequired]
public ResourceType Type { get; set; }
[BsonElement("Label")]
[BsonRequired]
public string Label { get; set; }
[BsonElement("DateCreation")]
public DateTime DateCreation { get; set; }
[BsonElement("Data")]
[BsonRequired]
public string Data { get; set; }
public ResourceDTO ToDTO()
{
return new ResourceDTO()
{
Id = Id,
Label = Label,
Type = Type,
Data = Type != ResourceType.Image ? Data : null,
};
}
public ResourceDetailDTO ToDetailDTO()
{
return new ResourceDetailDTO()
{
Id = Id,
Label = Label,
Type = Type,
Data = Data,
DateCreation = DateCreation
};
}
}
public enum ResourceType
{
Image,
Video,
ImageUrl,
VideoUrl
}
}