public async Task <IActionResult> ForAddBookAsync(AddBook addbook) { if (addbook.FileToUpload == null || addbook.FileToUpload.Length == 0) { return(Content("file not selected")); } //string path = (@"C:\Users\nithe\Source\Repos\KD-Company\KD Company\wwwroot\Car\"); var path = Path.Combine( Directory.GetCurrentDirectory(), "wwwroot/Image", addbook.FileToUpload.FileName); Console.WriteLine(path); using (var stream = new FileStream(path, FileMode.Create)) { await addbook.FileToUpload.CopyToAsync(stream); } using (BookAppDbContext dbContext = new BookAppDbContext()) { addbook.FileName = addbook.FileToUpload.FileName; dbContext.AddBooks.Add(addbook); //dbContext.AddBooks.Add(addbook.SelectedStatus=="0").; /// dbContext.addbook.SelectedStatus == "0"; dbContext.SaveChanges(); } return(View()); }
public IActionResult BookDetails() { BookAppDbContext dbContext = new BookAppDbContext(); var BookList = dbContext.AddBooks.ToList(); return(View(BookList)); }
public IActionResult Registration(Book Book) { BookAppDbContext dbContext = new BookAppDbContext(); Book obj = new Book(); obj.FirstName = Book.FirstName; obj.LastName = Book.LastName; obj.CourseName = Book.CourseName; obj.CourseYear = Book.CourseYear; obj.Phone = Book.Phone; obj.Address = Book.Address; obj.City = Book.City; obj.Email = Book.Email; ShareMail mail = new ShareMail(); string pass = mail.SendEmail(Book.Email); obj.Password = pass; dbContext.Add(obj); dbContext.SaveChanges(); return(View()); }
//public IActionResult Forlogin(AdminLogin adminLogin) //{ // using (BookAppDbContext dbContext = new BookAppDbContext()) // { // dbContext.AdminLogins.Add(adminLogin); // dbContext.SaveChanges(); // } // return View(); //} public IActionResult UserDetails() { BookAppDbContext dbContext = new BookAppDbContext(); var UserList = dbContext.Books.ToList(); return(View(UserList)); }
public IActionResult ViewFeedback() { BookAppDbContext dbContext = new BookAppDbContext(); var feedbackList = dbContext.Feedbacks.ToList(); return(View(feedbackList)); }
public IActionResult SelectedBooks() { BookAppDbContext dbContext = new BookAppDbContext(); var SelectedList = dbContext.AddBooks.ToList().Where(x => x.SelectedStatus == "1"); return(View(SelectedList)); }
public IActionResult AddFeedback(Feedback feedback) { using (BookAppDbContext dbContext = new BookAppDbContext()) { dbContext.Feedbacks.Add(feedback); dbContext.SaveChanges(); } return(View()); }
public IActionResult Search(String searchString) { BookAppDbContext dbContext = new BookAppDbContext(); var bookList = dbContext.AddBooks.ToList().Where(x => x.SelectedStatus == "0"); if (!String.IsNullOrEmpty(searchString)) { var filterList = bookList.Where(x => x.BookName.ToLower().Contains(searchString.ToLower())).ToList(); return(View(filterList)); } else { return(View(bookList)); } }
public IActionResult ForLogin(string email, string password) { BookAppDbContext dbContext = new BookAppDbContext(); string Email = email; string Password = password; var userlist = dbContext.Books.ToList(); var user = userlist.Where(X => X.Email == email && X.Password == password).FirstOrDefault(); if (user != null) { return(View()); } else { return(RedirectToAction("Login")); } }
public IActionResult AdminHome(string email, string password) { BookAppDbContext dbContext = new BookAppDbContext(); string Email = email; string Password = password; var loginlist = dbContext.AdminLogins.ToList(); var user = loginlist.Where(X => X.Email == email && X.Password == password).FirstOrDefault(); if (user != null) { return(View()); } else { return(RedirectToAction("Invalid")); } }
public IActionResult UpdateStatus(int id) { //Console.WriteLine(addBook); BookAppDbContext dbContext = new BookAppDbContext(); //int id; var SelectedList = dbContext.AddBooks.Where(x => x.Id == id).FirstOrDefault(); SelectedList.SelectedStatus = "1"; dbContext.AddBooks.Update(SelectedList); //var Book = dbContext.AddBooks.Where(x => x.Id == id).FirstOrDefault(); ////foreach (var book in AddBooks) ////{ //// author.Books.Remove(book); ////} ////context.Authors.Remove(author); //Book.SelectedStatus = "1"; //dbContext.AddBooks.Remove(Book); dbContext.SaveChanges(); return(View()); }
public async Task BookRepositoryAllMethodTest() { #region [0] DbContextOptions<T> Object Creation and ILoggerFactory Object Creation //[0] DbContextOptions<T> Object Creation and ILoggerFactory Object Creation var options = new DbContextOptionsBuilder <BookAppDbContext>() .UseInMemoryDatabase(databaseName: $"BookApp{Guid.NewGuid()}").Options; //.UseSqlServer("server=(localdb)\\mssqllocaldb;database=BookApp;integrated security=true;").Options; var serviceProvider = new ServiceCollection().AddLogging().BuildServiceProvider(); var factory = serviceProvider.GetService <ILoggerFactory>(); #endregion #region [1] AddAsync() Method Test //[1] AddAsync() Method Test //[1][1] Repository 클래스를 사용하여 저장 using (var context = new BookAppDbContext(options)) { context.Database.EnsureCreated(); // 데이터베이스가 만들어져 있는지 확인 //[A] Arrange: 1번 데이터를 아래 항목으로 저장합니다. var repository = new BookRepository(context, factory); var model = new Book { Title = "C# 교과서", Description = "C# 기초를 다룹니다." }; //[B] Act: AddAsync() 메서드 테스트 await repository.AddAsync(model); // Id: 1 } //[1][2] DbContext 클래스를 통해서 개수 및 레코드 확인 using (var context = new BookAppDbContext(options)) { //[C] Assert: 현재 총 데이터 개수가 1개인 것과, 1번 데이터의 Title이 "C# 교과서"인지 확인합니다. Assert.AreEqual(1, await context.Books.CountAsync()); var model = await context.Books.Where(n => n.Id == 1).SingleOrDefaultAsync(); Assert.AreEqual("C# 교과서", model.Title); } #endregion #region [2] GetAllAsync() Method Test //[2] GetAllAsync() Method Test using (var context = new BookAppDbContext(options)) { // 트랜잭션 관련 코드는 InMemoryDatabase 공급자에서는 지원 X // using (var transaction = context.Database.BeginTransaction()) { transaction.Commit(); } //[A] Arrange var repository = new BookRepository(context, factory); var model = new Book { Title = "ASP.NET Core를 다루는 기술", Description = "ASP.NET 기초" }; //[B] Act await repository.AddAsync(model); // Id: 2 await repository.AddAsync(new Book { Title = "타입스크립트", Description = "TypeScript" }); // Id: 3 } using (var context = new BookAppDbContext(options)) { //[C] Assert var repository = new BookRepository(context, factory); var models = await repository.GetAllAsync(); Assert.AreEqual(3, models.Count()); // TotalRecords: 3 } #endregion #region [3] GetByIdAsync() Method Test //[3] GetByIdAsync() Method Test using (var context = new BookAppDbContext(options)) { // Empty } using (var context = new BookAppDbContext(options)) { var repository = new BookRepository(context, factory); var model = await repository.GetByIdAsync(2); Assert.IsTrue(model.Title.Contains("ASP.NET")); Assert.AreEqual("ASP.NET 기초", model.Description); } #endregion #region [4] UpdateAsync() Method Test //[4] UpdateAsync() Method Test using (var context = new BookAppDbContext(options)) { // Empty } using (var context = new BookAppDbContext(options)) { var repository = new BookRepository(context, factory); var model = await repository.GetByIdAsync(2); model.Title = "ASP.NET & Core를 다루는 기술"; // Modified model.Description = "웹 개발 기술의 집합체"; await repository.UpdateAsync(model); var updateModel = await repository.GetByIdAsync(2); Assert.IsTrue(updateModel.Title.Contains("&")); Assert.AreEqual("ASP.NET & Core를 다루는 기술", updateModel.Title); Assert.AreEqual("웹 개발 기술의 집합체", (await context.Books.Where(m => m.Id == 2).SingleOrDefaultAsync())?.Description); } #endregion #region [5] DeleteAsync() Method Test //[5] DeleteAsync() Method Test using (var context = new BookAppDbContext(options)) { // Empty } using (var context = new BookAppDbContext(options)) { var repository = new BookRepository(context, factory); await repository.DeleteAsync(2); Assert.AreEqual(2, (await context.Books.CountAsync())); Assert.IsNull(await repository.GetByIdAsync(2)); } #endregion }
public BookRepository(BookAppDbContext context, IBookMapper bookMapper) { _context = context; _bookMapper = bookMapper; }
public ReservationRepository(BookAppDbContext context, IReservationMapper reservationMapper) { _context = context; _reservationMapper = reservationMapper; }
public Books1Controller(BookAppDbContext context) { _context = context; }