Asp.net MVC应用程序中搜索参数的存储方式和位置

Asp.net MVC应用程序中搜索参数的存储方式和位置,asp.net,asp.net-mvc-2,Asp.net,Asp.net Mvc 2,我正在开发一个铁路web应用程序,我有以下几层: ASP.NET MVC 2 (Presentation Layer) Services Layer Repository Layer Database & External Web Services as data sources (Using Entity Framework for Database) 我将域实体对象从存储库传递到服务层,并考虑将视图模型从服务传递到表示层。 网站将需要登录和成功登录后,我必须提出一个基本搜索(默认选

我正在开发一个铁路web应用程序,我有以下几层:

ASP.NET MVC 2 (Presentation Layer)
Services Layer
Repository Layer
Database & External Web Services as data sources (Using Entity Framework for Database)
我将域实体对象从存储库传递到服务层,并考虑将视图模型从服务传递到表示层。 网站将需要登录和成功登录后,我必须提出一个基本搜索(默认选项)和提前搜索选项搜索屏幕。一旦用户填写了搜索条件,我就必须从DB&Web服务收集数据,并将结果呈现给用户。用户将选择一个特定的轨道选项,并转到其他附加选项页面,但应允许他们通过返回轨道搜索结果来更改以前选择的轨道选项。我必须始终在每个屏幕上保留并显示用户的初始搜索条件(用户在搜索向导上选择的基本和高级搜索选项),并且在服务层和存储库层中需要这些条件

保存这些搜索条件并在表示层内和跨层从一页传递到另一页的最佳方法是什么?我应该为搜索选项创建视图模型类吗?或者域实体对象(我不这么认为)?还是DTO?和最好的方式,以通过它跨层和从一页到另一页在演示层