LINQ-запрос на выборку данных

86
12 сентября 2021, 15:10

Мне нужно написать event handler, который удалит всех writer, привязанных к book. Не могу написать LINQ-запрос

public class BookBeforeDeletedEventHandler : IEventHandler<BookBeforeDeletedEvent>
{
    private readonly IWriterService _writerService;
    public BookBeforeDeletedEventHandler(ILogger<UserClaimsGeneratedEventHandler> logger, IWriterService writerService)
    {
        _writerService = writerService;
    }
   // handler должен удалять всех writer, привязанных к этой book 
    public Task HandleEvent(BookBeforeDeletedEvent eventMessage)
    {
        // Как правильно написать этот запрос?
        _writerService.DeleteWriters(eventMessage.Book.Writers.Select(e => e.BookId == ???);
        return Task.CompletedTask;
    }
}

Book.cs

[Table("Books")]
public class Book : BaseNetworkEntity
{
    public Book()
    {
        Writers = new List<WriterBook>();
    }
    public string Title { get; set; }
    public virtual ICollection<WriterBook> Writers { get; set; }
}

Writer.cs

public class Writer: BaseNetworkEntity
{
    public Writer()
    {
        Books = new List<WriterBook>();
    }
    public string FirstName { get; set; }
    public virtual ICollection<WriterBook> Books { get; set; }
}

WriterBook

public class WriterBook
{
        public long WriterId { get; set; }
        public long BookId { get; set; }
        public virtual Writer Writer { get; set; }
        public virtual Book Book { get; set; }
}

Edit1

READ ALSO
Как создать копию List&lt;T&gt;?

Как создать копию List<T>?

У меня есть List внутри которого LanguageSet

240
Цикл для массива кнопок

Цикл для массива кнопок

Суть в том, что есть 9 кнопокЕсли нажать на одну из этих кнопок на этой кнопке должен появиться текст "Х"

304
При обращение к View каждый раз срабатывает get{} у свойств

При обращение к View каждый раз срабатывает get{} у свойств

Пытаюсь разобраться с анимацией в MVVMУсловно имеется 2 View

104
Как чередовать вывод информации в c#?

Как чередовать вывод информации в c#?

Есть 9 кнопок, при нажатии на произовльную кнопку(при условии, что все остальные пустые) ставится текст "Х" на неёЕсли выбрать след

104