MVC+WCF实现视频播放的顶和踩功能

    大家都知道做视频网站必须要有顶和踩的功能,我们的校园视频管理系统的顶和踩做到了和优酷顶和踩一样的效

果,下面我们就介绍一下我做的顶和踩的功能实现。

    之前想的是点击图片按钮,直接让显示和数据库中的数据都+1就可以了,后来参照了优酷,决定实现图片的“点

亮”效果,于是将原来的两张带颜色的按钮另做的两张灰色按钮,实现了图片点亮和数据及时更新的效果。


技术分享

         --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

技术分享

    下面我就做一下简单的介绍一下实现。

    准备黑白和彩色相对应的四张图片(可以用PS和美图秀秀修图)。

    View中的代码:


<div class="ding" style="cursor:pointer;">
            <img id="ding1" src="../../images/vedioPlayer/5-140FG92021-55_副本.jpg" onclick="getValueDing1()" />
            <span id="dingspan">@video.VideoDingCount</span>
        </div>
        <div class="cai" style="cursor:pointer;">
            <img id="cai1" src="../../images/vedioPlayer/5-140FG92022_副本.jpg" onclick="getValueDing2()" />
            <span id="caispan">@video.VideoCaiCount</span>
        </div>

    img标签放图片,span标签显示播放次数。

    Controller中方法1,调用WCF中的方法,返回视频播放的的信息:

//通过guid查询vedio的基本信息用于页面的显示
            Guid guid = new Guid(str);
            List<VideoInfo> videoInfoList = new List<VideoInfo>();
            videoInfoList = videoInfoService.GetPlayVideoInfo(guid);
            ViewData["VideoInfo"] = videoInfoList;
     

    Controller中方法2,更新顶和踩的记录,以顶为例:


#region 更新顶的记录 UpdateDingCount() 张子杰 2015-2-12 09:03:34
        public bool UpdateDingCount(VideoInfo videoinfo)
        {
            string videoid = Request["VideoID"];
            string dingcount = Request["DingCount"];
 
            //将捕获的dingcount和vedioid放到实体中
            VideoInfo envideoinfo = new VideoInfo();
            Guid VideoID = new Guid(videoid);
            int DingCount = Convert.ToInt32(dingcount);
            envideoinfo.VideoID = VideoID;
            envideoinfo.VideoDingCount = DingCount;
 
            bool result = videoInfoService.UpdateDingCount(envideoinfo);
 
            return result;
        }
        #endregion

 

    WCF中的实现方法:


 #region  更新顶的个数  bool UpdateDingCount(VideoInfo videoinfo) 张子杰 2015-2-12 07:57:02
        public bool UpdateDingCount(VideoInfo videoinfo)
        {
            //创建映射规则   
            Mapper.CreateMap<VideoInfo, VideoInfoEntity>();
            //创建实体集合
            VideoInfoEntity videoinfotmp = new VideoInfoEntity();
            //进行转换  
            videoinfotmp = Mapper.Map<VideoInfoEntity>(videoinfotmp);
 
 
            VideoInfoEntity VideoInfoEntity = videoinfoBLL.LoadEnities(u => u.VideoID == videoinfo.VideoID).ToList().First();
            VideoInfoEntity.VideoDingCount = videoinfo.VideoDingCount;
 
            bool result = videoinfoBLL.Update(VideoInfoEntity);
 
            return result;
        }
        #endregion

之后,高端大气的顶和踩功能就实现了。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。