using Dpz.Core.Entity.Base.MapperConfig;
using Dpz.Core.Public.Entity;
namespace Dpz.Core.Public.ViewModel;
/// <summary>
/// 视频 出参
/// </summary>
public class VmVideo : IMapFrom<Video>
{
public string? Id { get; set; }
/// <summary>
/// 文件夹、目录 名称
/// 视频位于云储存中所在的文件夹名称
/// </summary>
public string? Title { get; set; }
/// <summary>
/// 名称 方便弹幕管理友好名称
/// </summary>
public string? Name { get; set; }
/// <summary>
/// 视频标题
/// </summary>
public string? VideoTitle { get; set; }
/// <summary>
/// 视频副标题
/// </summary>
public string? SubTitle { get; set; }
/// <summary>
/// 视频描述
/// </summary>
public string? Description { get; set; }
/// <summary>
/// 视频标签
/// </summary>
public string[] Tags { get; set; } = [];
/// <summary>
/// 播放次数
/// </summary>
public int PlayCount { get; set; }
/// <summary>
/// 弹幕总数
/// </summary>
public int DanmakuCount { get; set; }
/// <summary>
/// 评论总数
/// </summary>
public int CommentCount { get; set; }
/// <summary>
/// 封面
/// </summary>
public string? Cover { get; set; }
/// <summary>
/// m3u8 地址
/// </summary>
// ReSharper disable once InconsistentNaming
public string? M3u8 { get; set; }
}
⚠⚠ 以下内容为AI分析的结果,请根据实际情况进行判断。
上述代码定义了一个名为 VmVideo 的类,它是一个视图模型(ViewModel),用于表示视频的相关信息。这个类实现了 IMapFrom<Video> 接口,表明它可以从 Video 实体映射而来。以下是对代码中各个部分的详细解释:
命名空间
Dpz.Core.Infrastructure和Dpz.Core.Public.Entity:这些命名空间可能包含基础设施和实体类的定义,具体内容取决于项目的结构。
类定义
public class VmVideo:定义了一个公共类VmVideo,用于封装视频的相关数据。
属性
Id:
- 类型:
string - 描述:视频的唯一标识符。
- 类型:
Title:
- 类型:
string - 描述:视频在云存储中所在的文件夹或目录的名称。
- 类型:
Name:
- 类型:
string - 描述:视频的友好名称,方便弹幕管理。
- 类型:
VideoTitle:
- 类型:
string - 描述:视频的标题。
- 类型:
SubTitle:
- 类型:
string - 描述:视频的副标题。
- 类型:
Description:
- 类型:
string - 描述:对视频的详细描述。
- 类型:
Tags:
- 类型:
string[] - 描述:与视频相关的标签,用于分类或搜索。
- 类型:
PlayCount:
- 类型:
int - 描述:视频的播放次数。
- 类型:
DanmakuCount:
- 类型:
int - 描述:视频的弹幕总数。
- 类型:
CommentCount:
- 类型:
int - 描述:视频的评论总数。
- 类型:
Cover:
- 类型:
string - 描述:视频的封面图像的URL或路径。
- 类型:
M3u8:
- 类型:
string - 描述:视频的M3U8地址,通常用于流媒体播放。
- 类型:
总结
VmVideo 类的主要功能是将视频的相关信息封装成一个易于使用的对象,通常用于在前端展示或在API响应中返回。通过实现 IMapFrom<Video> 接口,VmVideo 可以方便地从 Video 实体对象中映射数据,简化了数据传输和转换的过程。
评论加载中...