我正在尝试删除关系表中的条目"SongPlaylist">
使用where不能选择条目,有没有办法删除这个关系?这是我的三个模型:
public int SongId { get; set; }
public IList<SongPlaylist> SongPlaylist { get; set; }
public int PlaylistId { get; set; }
public IList<SongPlaylist> SongPlaylist { get; set; }
public int SongId { get; set; }
public Song Song { get; set; }
public int PlaylistId { get; set; }
public Playlist Playlist { get; set; }
下面是我删除关系的方法:
var RelationToDelete = _context.SongPlaylist.Where(x => x.PlaylistId == playlistId && x.SongId == songId).First();
我不想删除播放列表对象和歌曲对象,只删除两者之间的关系。
你可以试试:
var removingRows= _context.Set<SongPlaylist>().Where(x => x.PlaylistId == playlistId && x.SongId == songId).ToArray();
if(removingRows != null)
{
_context.Set<SongPlaylist>().RemoveRange(removingRows);
_context.SaveChanges();
}
如果您确定只需要删除一行:
var removingRow=_context.Set<SongPlaylist>().Where(x => x.PlaylistId == playlistId && x.SongId == songId).FirstOrDefault();
if(removingRow != null)
{
_context.Set<SongPlaylist>().Remove(removingRow);
_context.SaveChanges();
}
您是否尝试过包含相关实体?
:服用点什么
var RelationToDelete = _context.SongPlaylist.include(yy=>yy.Playlist).Where(x => x.PlaylistId == playlistId && x.SongId == songId).First();