Exemple #1
0
        /// <summary>
        /// 创建歌单与歌曲的关联
        /// </summary>
        /// <param name="userId"></param>
        /// <param name="playListId"></param>
        /// <param name="songId"></param>
        /// <param name="cancellationToken"></param>
        /// <returns></returns>
        public async Task <RelPlayListSong> Create([Required] string userId, [Required] string playListId, [Required] string songId, CancellationToken cancellationToken = default(CancellationToken))
        {
            // 查询是否存在
            var p = (from pls in Context.RelPlayListSongs
                     where pls.PlayListId == playListId && pls.SongId == songId
                     select new RelPlayListSong(pls)).SingleOrDefault();

            if (p != null)
            {
                // 添加操作日志
                return(p);
            }
            var playListSong = new RelPlayListSong
            {
                PlayListId = playListId,
                SongId     = songId
            };

            Context.Add(playListSong);
            try
            {
                await Context.SaveChangesAsync(cancellationToken);  // TODO 添加日志
            }
            catch (DbUpdateConcurrencyException e)
            {
                throw new Exception("WS------ StoreBase中保存改变时: \r\n", e);
            }
            return(playListSong);
        }
Exemple #2
0
 /// <summary>
 /// 删除歌单歌曲关联
 /// </summary>
 /// <param name="userId"></param>
 /// <param name="rel"></param>
 /// <param name="cancellationToken"></param>
 /// <returns></returns>
 public async Task <RelPlayListSong> Delete([Required] string userId, [Required] RelPlayListSong rel, CancellationToken cancellationToken = default(CancellationToken))
 {
     return(await Delete(userId, rel.PlayListId, rel.SongId, cancellationToken));
 }