Example #1
0
        static void Main(string[] args)
        {
            OrdenacaoLivros ol = new OrdenacaoLivros();

            Console.WriteLine("default:");

            foreach (var book in ol.livros)
            {
                Console.WriteLine("{0} {1} {2} {3}", book.Id.ToString(), book.Title, book.Author, book.Edition);
            }
            Console.WriteLine(ol.OrderBooksToVerbose());

            ol.OrderBooks("title ASC");
            Console.WriteLine("\ntitle ASC:");

            foreach (var book in ol.livros)
            {
                Console.WriteLine("{0} {1} {2} {3}", book.Id.ToString(), book.Title, book.Author, book.Edition);
            }
            Console.WriteLine(ol.OrderBooksToVerbose());

            ol.OrderBooks("author ASC, title DESC");
            Console.WriteLine("\nauthor ASC, title DESC:");

            foreach (var book in ol.livros)
            {
                Console.WriteLine("{0} {1} {2} {3}", book.Id.ToString(), book.Title, book.Author, book.Edition);
            }
            Console.WriteLine(ol.OrderBooksToVerbose());

            ol.OrderBooks("edition DESC, author DESC, title ASC");
            Console.WriteLine("\nedition DESC, author DESC, title ASC:");

            foreach (var book in ol.livros)
            {
                Console.WriteLine("{0} {1} {2} {3}", book.Id.ToString(), book.Title, book.Author, book.Edition);
            }
            Console.WriteLine(ol.OrderBooksToVerbose());

            ol.livros = new List <Livro> {
            };
            ol.OrderBooks();
            Console.WriteLine("\nConjunto vazio:");

            foreach (var book in ol.livros)
            {
                Console.WriteLine("{0} {1} {2} {3}", book.Id.ToString(), book.Title, book.Author, book.Edition);
            }
            Console.WriteLine(ol.OrderBooksToVerbose());

            Console.WriteLine("\nAperte qualquer tecla para enviar conjunto nulo:");
            Console.ReadKey();

            // throw exception
            ol.livros = null;
            ol.OrderBooks("nulo");
        }
Example #2
0
        public BooksModule()
        {
            Get["/api/"] = param => "Hello Books World!";

            Post["/api/ordenacao"] = param =>
            {
                var body = this.Bind <BodyBooks>();

                // instancia serviço de ordenação
                OrdenacaoLivros ol = new OrdenacaoLivros(body.livros);
                // recupera ordenação, e executa ordenação
                List <Livro> livros = ol.OrderBooks(body.ordenacao);
                // retorna a coleção como json
                return(Response.AsJson(livros));
            };
        }