public void Modify_Post() { InitializeInMemoryDbContext(options => { using (var uowManager = new EfCoreUnitOfWorkManager()) { var repository = new PostRepository(new BloggingDbContext(options)); repository.Count().ShouldBe(2); var uow = new EfCoreUnitOfWork( ((IRepositoryWithDbContext)repository).GetDbContext() ); uowManager.Register(uow); var post = repository.All().First(); post.ShouldNotBeNull(); var postId = post.Id; post.Title = "已修改"; repository.Modify(post); uowManager.Commit(); repository.Single(s => s.Id.Equals(postId)) .Title .ShouldBe("已修改"); } }); }
public void Multiple_Operations() { InitializeInMemoryDbContext(options => { using (var uowManager = new EfCoreUnitOfWorkManager()) { var r1 = new PostRepository(new BloggingDbContext(options)); uowManager.Register(new EfCoreUnitOfWork( ((IRepositoryWithDbContext)r1).GetDbContext() )); var r2 = new PostRepository(new BloggingDbContext(options)); uowManager.Register(new EfCoreUnitOfWork( ((IRepositoryWithDbContext)r2).GetDbContext() )); var r3 = new EfCoreRepositoryBase <BloggingDbContext, Comment>(new BloggingDbContext(options)); uowManager.Register(new EfCoreUnitOfWork( ((IRepositoryWithDbContext)r3).GetDbContext() )); var p1 = new Post { Title = "r1 新增 Post" }; r1.Create(p1); var p2 = r2.All().First(); p2.Title = "r2 修改 Post"; r2.Modify(p2); var c3Id = r3.All().First().Id; r3.Remove(c3Id); uowManager.Commit(); var r4 = new PostRepository(new BloggingDbContext(options)); r4.All().Count().ShouldBe(3); r4.Single(s => s.Id.Equals(p2.Id)).Title.ShouldBe("r2 修改 Post"); var r5 = new EfCoreRepositoryBase <BloggingDbContext, Comment>(new BloggingDbContext(options)); r5.SingleOrDefault(s => s.Id == c3Id).ShouldBeNull(); } }); }
public JsonResult GetPostList() { var postList = _postRepository.All().ToList(); List <PostModel> objList = new List <PostModel>(); foreach (var p in postList) { CategoryModel category = new CategoryModel { Id = p.Category.Id, Name = p.Category.Name, UrlSlug = p.Category.UrlSlug, Description = p.Category.Description }; List <TagModel> tagList = new List <TagModel>(); foreach (var t in p.PostTagMaps) { //t. } PostModel obj = new PostModel { Id = p.Id, Title = p.Title, ShortDescription = p.ShortDescription, Description = p.Description, Meta = p.Meta, UrlSlug = p.UrlSlug, Published = p.Published, PostedOn = p.PostedOn, Modified = p.Modified, CategoryId = p.CategoryID, Category = category }; } return(Json("")); }
public IEnumerable <Post> GetAll() { return(_repository.All()); }
public WidgetViewModel(PostRepository postRepository, TagRepository tagRepository, CategoryRepository categoryRepository) { Categories = categoryRepository.All().ToList(); Tags = tagRepository.All().ToList(); LatestPosts = postRepository.All().ToList(); }