/// <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); }
/// <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)); }