// GET: Genre public ActionResult Index() { var liste = db.Genre.Include(a => a.Movies).ToList(); try { var response = ElasticsearchHelper.EsClient().Search <Genre>(s => s .Index("genres") .Type("genre") .From(0) .Size(1000) .Query(a => a.MatchAll()) ); ViewBag.Genre = response.Documents; } catch (Exception ex) { throw; } return(View(ViewBag.Genre)); }
public MovieController() { if (!ElasticsearchHelper.EsClient().IndexExists("movies").Exists) { ElasticsearchHelper.CreateMovieIndex(); } }
public GenreController() { if (!ElasticsearchHelper.EsClient().IndexExists("genres").Exists) { ElasticsearchHelper.CreateGenreIndex(); } }
// GET: Movie public ActionResult Index(string q) { if (!String.IsNullOrEmpty(q)) { try { var response = ElasticsearchHelper.EsClient().Search <Movie>(p => p .Index("movies") .Type("movie") .Query(a => a.Term(t => t.Description, q)) .Query(a => a.MatchPhrasePrefix(mq => mq.Field(f => f.Title).Query(q))) ); var datasend = (from hits in response.Hits select hits.Source).ToList(); ViewBag.Data = datasend; return(View(ViewBag.Data)); } catch (Exception ex) { throw; } } else { try { var response = ElasticsearchHelper.EsClient().Search <Movie>(s => s .Index("movies") .Type("movie") .From(0) .Size(1000) .Source(a => a.IncludeAll()) .Query(a => a.MatchAll()) ); ViewBag.Data = response.Documents; } catch (Exception ex) { throw; } return(View(ViewBag.Data)); } }
public ActionResult DeleteConfirmed(int id) { Genre genre = db.Genre.Find(id); db.Genre.Remove(genre); db.SaveChanges(); var response = ElasticsearchHelper.EsClient().Delete <Genre>(id, d => d .Index("genres") .Type("genre") .Refresh(Elasticsearch.Net.Refresh.True)); return(RedirectToAction("Index")); }
public ActionResult Create([Bind(Include = "Id,Name,Description")] Genre genre) { if (ModelState.IsValid) { db.Genre.Add(genre); db.SaveChanges(); ElasticsearchHelper.EsClient().Index <Genre>(genre, id => id.Index("genres") .Type(TypeName.From <Genre>()) .Id(genre.Id) .Refresh(Elasticsearch.Net.Refresh.True)); return(RedirectToAction("Index")); } return(View(genre)); }
public ActionResult Create([Bind(Include = "Id,Title,Description,CreatedDate,GenreId")] Movie movie) { if (ModelState.IsValid) { movie.CreatedDate = DateTime.Now; db.Movie.Add(movie); db.SaveChanges(); ElasticsearchHelper.EsClient().Index <Movie>(movie, id => id.Index("movies") .Type(TypeName.From <Movie>()) .Id(movie.Id) .Refresh(Elasticsearch.Net.Refresh.True)); return(RedirectToAction("Index")); } ViewBag.GenreID = new SelectList(db.Genre, "ID", "Name", movie.GenreId); return(View(movie)); }
public ActionResult Edit([Bind(Include = "Id,Name,Description")] Genre genre) { if (ModelState.IsValid) { db.Entry(genre).State = EntityState.Modified; db.SaveChanges(); var response = ElasticsearchHelper.EsClient().Update <Genre, Genre>(genre.Id, d => d .Index("genres") .Type("genre") .Refresh(Elasticsearch.Net.Refresh.True) .Doc(new Genre { Id = genre.Id, Name = genre.Name, Description = genre.Description })); return(RedirectToAction("edit")); } return(View(genre)); }
public ActionResult Edit([Bind(Include = "Id,Title,Description,CreatedDate,GenreId")] Movie movie) { if (ModelState.IsValid) { db.Entry(movie).State = EntityState.Modified; db.SaveChanges(); var response = ElasticsearchHelper.EsClient().Update <Movie, Movie>(movie.Id, d => d .Index("movies") .Type("movie") .Refresh(Elasticsearch.Net.Refresh.True) .Doc(new Movie { Id = movie.Id, Title = movie.Title, Description = movie.Description, GenreId = movie.GenreId, CreatedDate = DateTime.Now })); return(RedirectToAction("Index")); } ViewBag.GenreID = new SelectList(db.Genre, "ID", "Name", movie.GenreId); return(View(movie)); }