有一個interface及實作 BookRepository,

但不知為何一直說access error? 請問如何修改thx

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace mvc3b.Con2
{
public class CategoryCount
{
public int Count { get; set; }
public Book.Category2 Category { get; set; }
}
}


===========================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace mvc3b.Con2
{
public class Book
{
public int Id;

public string Title { get; set; }

public double Price { get; set; }

public DateTime PublishDate { get; set; }

public bool InStock { get; set; }

public string Description { get; set; }

public Category2 Category {get ; set;}
public enum Category2
{
Arts,
Computers,
Cooking
}
}

}


===========================
using System;

using System;
using System.Collections.Generic;
using System.Text;
using mvc3b.Con2;

namespace mvc3b.Con2
{



public interface IBookRepository
{
IEnumerable<Book> GetAllBooks();
Book GetBook(int id);
Book Update(Book editBook);
Book Create(Book newBook);
Book Delete(int id);


IEnumerable<CategoryCount> GetBookCountByCategory2();
IEnumerable<Book> GetBookByKeyword(string keyword);
}
}

===========================

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;


namespace mvc3b.Con2
{
public class BookRepository : IBookRepository
{
private List<Book> _books = null;
public BookRepository()
{


_books = new List<Book>() {
new Book() {
Id = 1 ,
Title = " Essential Programming Language " ,
Price = 250.0 ,
PublishDate = new DateTime( 2019 ,1,2 ) ,
InStock = true ,
Description = "Essential Programming Language " ,
Category = Book.Category2.Computers
},

new Book() {
Id = 2 ,
Title = "Telling Arts" ,
Price = 245 ,
PublishDate = new DateTime( 2019 , 4 , 15 ) ,
InStock = true ,
Description = " Telling Arts " ,
Category = Book.Category2.Arts
},
new Book() {
Id = 3 ,
Title = "Marvel" ,
Price = 150 ,
PublishDate = new DateTime( 2019 , 2, 21 ) ,
InStock = true ,
Description = " Marvel " ,
Category = Book.Category2.Arts
},
new Book() {
Id = 4 ,
Title = "The Beauty of Cook" ,
Price = 450 ,
PublishDate = new DateTime( 2019 ,12, 2 ) ,
InStock = true ,
Description = " The Beauty of Cook " ,
Category = Book.Category2.Cooking
},
new Book() {
Id = 5 ,
Title = " Learning how to Cook " ,
Price = 450 ,
PublishDate = new DateTime( 2020 , 1, 20 ) ,
InStock = true ,
Description = " Learning how to Cook " ,
Category = Book.Category2.Cooking
}
};
}


Book Delete(int id)
{
Book book = _books.FirstOrDefault(b => b.Id == id);
if (book != null)
{
_books.Remove(book);
}
return book;
}
Book Create(Book newBook)
{
newBook.Id = _books.Max(b => b.Id) + 1;
_books.Add(newBook);
return newBook;
}


Book GetBook(int id)
{
return _books.FirstOrDefault(b => b.Id == id);
}
Book Update(Book editBook)
{
Book book = _books.FirstOrDefault(b => b.Id == editBook.Id);
if (book != null)
{
book.Title = editBook.Title;
book.Price = editBook.Price;
book.PublishDate = editBook.PublishDate;
book.InStock = editBook.InStock;
book.Description = editBook.Description;
book.Category = editBook.Category;
}
return book;
}


IEnumerable<CategoryCount> GetBookCountByCategory()
{
return _books
.GroupBy(b => b.Category)
.Select(g => new CategoryCount()
{
Category = g.Key,
Count = g.Count()
}).ToList();
}
}
}
文章關鍵字
文章分享
評分
評分
複製連結

今日熱門文章 網友點擊推薦!