public void UpdateBook(ClientBookDto newBook) { var oldBook = Library.FirstOrDefault(b => b.BookId == newBook.BookId); oldBook.Author = newBook.Author; oldBook.Title = newBook.Title; oldBook.Isbn = newBook.Isbn; oldBook.GenreId = newBook.GenreId; oldBook.Genre = newBook.Genre; oldBook.Bookmarks = newBook.Bookmarks; oldBook.PageNumber = newBook.PageNumber; NotifyDataSetChanged(); }
protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); SetContentView(Resource.Layout.activity_book_data_edit); _database = Database.Instance; AuthorTextView = FindViewById <TextView>(Resource.Id.text_view_book_author); var authorEditImageButton = FindViewById <ImageButton>(Resource.Id.image_button_edit_author); TitleTextView = FindViewById <TextView>(Resource.Id.text_view_book_title); var titleEditImageButton = FindViewById <ImageButton>(Resource.Id.image_button_edit_title); IsbnTextView = FindViewById <TextView>(Resource.Id.text_view_book_isbn); var isbnEditImageButton = FindViewById <ImageButton>(Resource.Id.image_button_edit_isbn); var GenreSpinner = FindViewById <Spinner>(Resource.Id.spinner_book_genre); var bookmarkRecyclerView = FindViewById <RecyclerView>(Resource.Id.recyclerView_bookmarkList); var saveButton = FindViewById <Button>(Resource.Id.button_book_save); var cancelButton = FindViewById <Button>(Resource.Id.button_book_cancel); var addBookmarkButton = FindViewById <Button>(Resource.Id.button_addBookmark); saveButton.Click += OnSaveButtonClick; cancelButton.Click += OnCancelButtonClick; addBookmarkButton.Click += AddBookMarkButtonClick; authorEditImageButton.Click += OnAuthorEditImageButtonClick; titleEditImageButton.Click += OnTitleEditImageButtonClick; isbnEditImageButton.Click += OnIsbnEditImageButtonClick; var dialog = UserDialogs.Instance.Loading("Loading"); var extra = Intent.GetStringExtra("book"); if (!string.IsNullOrEmpty(extra)) { XmlSerializer xmlSerializer = new XmlSerializer(typeof(ClientBookDto)); StringReader sr = new StringReader(extra); Dto = (ClientBookDto)xmlSerializer.Deserialize(sr); var bookmarkList = _database.SelectTable <ClientBookmarkDto>().Where(bm => bm.BookId == Dto.BookId).ToList(); BookmarkAdapter.AddBookmark(bookmarkList); } else { Dto = new ClientBookDto(); } GenreList = _database.GetGenres(); var adapter = new ArrayAdapter <string>(this, Resource.Layout.support_simple_spinner_dropdown_item, GenreList.Select(g => g.GenreName).ToList()); GenreSpinner.Adapter = adapter; GenreSpinner.ItemSelected += OnGenreSpinnerItemSelected; if (string.IsNullOrEmpty(Dto.GenreId)) { Dto.Genre = GenreList.FirstOrDefault(); Dto.GenreId = Dto.Genre.GenreId; } GenreSpinner.SetSelection(GenreList.IndexOf(Dto.Genre)); BookmarkAdapter.RecyclerView = bookmarkRecyclerView; bookmarkRecyclerView.SetAdapter(BookmarkAdapter); bookmarkRecyclerView.SetLayoutManager(new LinearLayoutManager(this)); BookmarkAdapter.Context = this; AuthorTextView.Text = Dto.Author; TitleTextView.Text = Dto.Title; IsbnTextView.Text = Dto.Isbn; dialog.Dispose(); }