网站首页 网站源码

using Dpz.Core.Infrastructure;
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>
    public string M3u8 { get; set; }
}
上述代码定义了一个名为 VmVideo 的类,它是一个视图模型(ViewModel),用于表示视频的相关信息。这个类实现了 IMapFrom<Video> 接口,表明它可以从 Video 实体映射而来。以下是对代码中各个部分的详细解释:
Dpz.Core.Infrastructure 和 Dpz.Core.Public.Entity:这些命名空间可能包含基础设施和实体类的定义,具体内容取决于项目的结构。public class VmVideo:定义了一个公共类 VmVideo,用于封装视频的相关数据。Id:
stringTitle:
stringName:
stringVideoTitle:
stringSubTitle:
stringDescription:
stringTags:
string[]PlayCount:
intDanmakuCount:
intCommentCount:
intCover:
stringM3u8:
stringVmVideo 类的主要功能是将视频的相关信息封装成一个易于使用的对象,通常用于在前端展示或在API响应中返回。通过实现 IMapFrom<Video> 接口,VmVideo 可以方便地从 Video 实体对象中映射数据,简化了数据传输和转换的过程。
