У меня есть таблицы (от MySql) в моих сущностях:
![enter image description here](https://i.stack.imgur.com/Tlv5T.jpg)
Интерфейс приложения:
![enter image description here](https://i.stack.imgur.com/FHusP.jpg)
и начало кода:
Dim db As New dbContext
Dim current_Book_id As Integer = 0
Private Sub Forma_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Read_Books()
Read_BooksAuthors()
AddHandler DataGridView_Books.SelectionChanged, AddressOf DataGridView_Books_SelectionChanged
End Sub
Private Sub Read_Books()
DataGridView_Books.DataSource = New BindingSource With {.DataSource = db.Books.ToList}
End Sub
Private Sub Read_BooksAuthors()
DataGridView_Book_Authors.DataSource = New BindingSource With {.DataSource = db.Authors.ToList}
End Sub
Private Sub DataGridView_Books_SelectionChanged()
With DataGridView_Books
If .CurrentCell.Selected Then
current_Book_id = .Rows(.CurrentRow.Index).Cells("id").Value
End If
End With
Read_BooksAuthors()
End Sub
Я хочу подать заявку, где:
- Только кнопка Сохранить, внесите любые изменения в база. Если пользователь добавляет, вносит изменения или удаляет из книг или авторов DataGridView, он будет потерян, если он не сохранит его. Пример: пользователь может добавить новую книгу, затем добавить к ней нескольких авторов и нажать «Сохранить», чтобы сохранить ее в базе данных. Если он закроет приложение, изменения будут потеряны. Вопрос: где хранить временные изменения и как их сохранить после использования кнопки «Сохранить»?
- Я хочу показать в DataGridView_Books все книги (id nad title) - как сейчас. Вопрос: правильный ли код в функции Read_Books?
- Я хочу отобразить имена авторов выбранной книги в DataGridView_Books. Вопрос: Как написать запрос, включающий NaviagtionProporties?
Примеры могут быть в VB. NET или C#. Спасибо.
РЕДАКТИРОВАТЬ 1
Я задам отдельные вопросы, а затем объединю их вместе. Как читать BooksAuthors и переносить их в DataGridView (связывание) для отображения названий книг и имен авторов с возможностью редактирования и сохранения их с помощью метода SaveChanges?