Formulário de pesquisa da ASP.NET MVC com paginação

Estou sem palavras, pois devo estar perdendo alguma coisa. Acabei de concluir a ASP.NET MVC 1.0 (WROX) e estou tentando implementar uma exibição que executa uma pesquisa simples e renderiza os resultados em uma tabela. Eu gostaria de poder folhear os resultados.

Então eu tenho uma ação de busca de ListingsController, pega alguns valores de FormCollection e filtra os resultados de acordo:

        //
    //POST: /Listings/Search
    //      /Listings/Page/2
    [AcceptVerbs(HttpVerbs.Post)]
    public ActionResult Search(FormCollection collection,int? page)
    {
        var listings = listingRepository.GetListings();

        //filter
        if (collection["TypeOfHouse"] != null)
        {
            string[] typeList = collection["TypeOfHouse"].Split(',');

            foreach (string type in typeList)
            {
                listings = from l in listings
                           where l.TypeOfHouse == type
                           select l;
            }
        }

        //display the first page of results
        int pageSize = 25;
        var paginatedListings = new PriviledgeV1.Helpers.PaginatedList<Listing>(listings, 0, pageSize);



        return View("Results", paginatedListings);
    }

Inicialmente, a visualização Results será renderizada com os primeiros 25 registros da página 1. Então, eu tenho uma ação Results que lida com a "paginação":

    public ActionResult Results(int? page)
    {
        int pageSize = 25;
        var listings = listingRepository.GetListings();
        var paginatedListings = new PriviledgeV1.Helpers.PaginatedList<Listing>(listings, page ?? 0, pageSize);

        return View(listings);
    }

O problema é que eu não tenho mais o FormCollection, não posso filtrar adequadamente os resultados. Portanto, se eu tentasse passar da página 1 para a página 2 usando / Listings / Results? Page = 2, a ação de resultados seria acionada e retornaria TODOS os resultados em vez do conjunto de resultados filtrados da ação Pesquisar.

Estou muito confuso sobre o que fazer aqui, e por que não há blogs / tutoriais explicando isso, o que normalmente me sinaliza que estou perdendo alguma coisa.

Obrigado!

questionAnswers(2)

yourAnswerToTheQuestion