using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Data.Objects; namespace SportsStore.Models.Abstract { public class ProductRepository : IProductRepository { SportsStoreEntities db = new SportsStoreEntities(); //查询全部 public IQueryable<Product> Products() { return db.Product; } //根据名称来查询 public ObjectSet<Product> GetProductsByName(string _name) { return (ObjectSet<Product>)db.Product.Where(p => p.Name.Contains(_name)); } //根据ID来查询 public ObjectQuery<Product> GetProductsByID(int _id) { return (ObjectQuery<Product>) db.Product.Where(p => p.ProductID == _id); } //添加一个实体 public bool AddProdcut(Product _product) { db.Product.AddObject(_product); if (db.SaveChanges() > 0) { return true; } else { return false; } } //删除一个实体 public bool DeleteProduct(int _id) { db.Product.DeleteObject(db.Product.Where(p=>p.ProductID==_id).Single()); if (db.SaveChanges() > 0) { return true; } else { return false; } } //更新Product的Name属性,如果要修改多个属性,类似在 ose.SetModifiedProperty("Name")加上其他的 public bool UpdatePruduct(Product _product) { db.Product.Attach(_product); ObjectStateEntry ose = db.ObjectStateManager.GetObjectStateEntry(_product); ose.SetModified(); ose.SetModifiedProperty("Name"); if (db.SaveChanges() > 0) { return true; } else { return false; } } } }