// GET api/actors/title
 public IEnumerable<Models.Actor> Get(string name)
 {
     var actors = new Models.ActorRepository();
     var actorList = actors.Retrieve();
     var filteredList = actorList.Where(t => t.name.Contains(name));
     return filteredList;
 }
        public MoviesModule()
            : base("/api")
        {
            // GET api/movies
            Get["/movies"] = _ =>
            {
                var movies = new Models.MovieRepository();
                return JsonConvert.SerializeObject(movies.Retrieve());
            };

            // GET api/movies/title
            Get["/movies/{title:alpha}"] = parameters =>
            {
                var movies = new Models.MovieRepository();
                var movieList = movies.Retrieve();
                var filteredList = movieList.Where(t => t.title.Contains(parameters.title));
                return JsonConvert.SerializeObject(filteredList);
            };

            // GET api/movies/5
            Get["/movies/{id:int}"] = parameters =>
            {
                var movies = new Models.MovieRepository();
                var movieList = movies.Retrieve();
                var movie = movieList.FirstOrDefault(t => t.movieId == parameters.id);

                var actors = new Models.ActorRepository();
                var actorList = actors.Retrieve();

                var populatedActorList = new List<Models.Actor>();
                foreach (var item in movie.keyActors)
                {
                    var actor = actorList.FirstOrDefault(a => a.actorId == item.actorId);
                    populatedActorList.Add(actor);
                }
                movie.keyActors = populatedActorList;

                return JsonConvert.SerializeObject(movie);
            };

            // POST api/movies
            Post["/movies"] = _ =>
            {
                Movie movie = this.Bind<Movie>(); //Bind is an extension method defined in Nancy.ModelBinding
                return "Post movie form: " + movie.title;
            };

            // PUT api/movies/5
            Put["/movies/{id}"] = parameters =>
            {
                Movie movie = this.Bind<Movie>();
                return "Put param: " + parameters.id + ", actor form: " + movie.title;
            };

            // DELETE api/movies/5
            Delete["/movies/{id}"] = parameters =>
            {
                return "Delete param: " + parameters.id;
            };
        }
示例#3
0
        // GET api/actors/title
        public IEnumerable <Models.Actor> Get(string name)
        {
            var actors       = new Models.ActorRepository();
            var actorList    = actors.Retrieve();
            var filteredList = actorList.Where(t => t.name.Contains(name));

            return(filteredList);
        }
        public ActorsModule()
            : base("/api")
        {
            // GET api/actors
            Get["/actors"] = _ =>
            {
                var actors = new Models.ActorRepository();
                return JsonConvert.SerializeObject(actors.Retrieve());
            };

            // GET api/actors/name
            Get["/actors/{name:alpha}"] = parameters =>
            {
                var actors = new Models.ActorRepository();
                var actorList = actors.Retrieve();
                var filteredList = actorList.Where(t => t.name.Contains(parameters.name));
                return JsonConvert.SerializeObject(filteredList);
            };

            // GET api/actors/5
            Get["/actors/{id:int}"] = parameters =>
            {
                var actors = new Models.ActorRepository();
                var actorList = actors.Retrieve();
                var actor = actorList.FirstOrDefault(t => t.actorId == parameters.id);

                var movies = new Models.MovieRepository();
                var movieList = movies.Retrieve();

                var keyMovies = movieList.SelectMany(m => m.keyActors.Where(a => a.actorId == actor.actorId),
                    (m, a) => m);
                actor.keyMovies = keyMovies.ToList();

                return JsonConvert.SerializeObject(actor);
            };

            // POST api/actors
            Post["/actors"] = _ =>
            {
                Actor actor = this.Bind<Actor>(); //Bind is an extension method defined in Nancy.ModelBinding
                return "Post actor form: " + actor.name;
            };

            // PUT api/actors/5
            Put["/actors/{id}"] = parameters =>
            {
                Actor actor = this.Bind<Actor>();
                return "Put param: " + parameters.id + ", actor form: " + actor.name;
            };

            // DELETE api/actors/5
            Delete["/actors/{id}"] = parameters =>
            {
                return "Delete param: " + parameters.id;
            };
        }
        // GET api/actors/5
        public Models.Actor Get(int id)
        {
            var actors = new Models.ActorRepository();
            var actorList = actors.Retrieve();
            var actor = actorList.FirstOrDefault(t => t.actorId == id);

            var movies = new Models.MovieRepository();
            var movieList = movies.Retrieve();

            var keyMovies = movieList.SelectMany(m => m.keyActors.Where(a => a.actorId == actor.actorId),
                                (m,a)=>m);
            actor.keyMovies = keyMovies.ToList();

            return actor;
        }
示例#6
0
        // GET api/actors/5
        public Models.Actor Get(int id)
        {
            var actors    = new Models.ActorRepository();
            var actorList = actors.Retrieve();
            var actor     = actorList.FirstOrDefault(t => t.actorId == id);

            var movies    = new Models.MovieRepository();
            var movieList = movies.Retrieve();

            var keyMovies = movieList.SelectMany(m => m.keyActors.Where(a => a.actorId == actor.actorId),
                                                 (m, a) => m);

            actor.keyMovies = keyMovies.ToList();

            return(actor);
        }
        // GET api/movies/5
        public Models.Movie Get(int id)
        {
            var movies = new Models.MovieRepository();
            var movieList = movies.Retrieve();
            var movie = movieList.FirstOrDefault(t => t.movieId==id);

            var actors = new Models.ActorRepository();
            var actorList = actors.Retrieve();

            var populatedActorList = new List<Models.Actor>();
            foreach (var item in movie.keyActors)
            {
                var actor = actorList.FirstOrDefault(a => a.actorId == item.actorId);
                populatedActorList.Add(actor);
            }
            movie.keyActors = populatedActorList;

            return movie;
        }
        // GET api/movies/5
        public Models.Movie Get(int id)
        {
            var movies    = new Models.MovieRepository();
            var movieList = movies.Retrieve();
            var movie     = movieList.FirstOrDefault(t => t.movieId == id);

            var actors    = new Models.ActorRepository();
            var actorList = actors.Retrieve();

            var populatedActorList = new List <Models.Actor>();

            foreach (var item in movie.keyActors)
            {
                var actor = actorList.FirstOrDefault(a => a.actorId == item.actorId);
                populatedActorList.Add(actor);
            }
            movie.keyActors = populatedActorList;

            return(movie);
        }
示例#9
0
        // GET api/actors
        public IEnumerable <Models.Actor> Get()
        {
            var actors = new Models.ActorRepository();

            return(actors.Retrieve());
        }
 // GET api/actors
 public IEnumerable<Models.Actor> Get()
 {
     var actors = new Models.ActorRepository();
     return actors.Retrieve();
 }