Asp.net mvc 4 在MVC中保存用户信息(在不同视图上显示相同数据)

Asp.net mvc 4 在MVC中保存用户信息(在不同视图上显示相同数据),asp.net-mvc-4,Asp.net Mvc 4,我需要一些帮助,以便找到保存用户在迷你预订网站中选择的数据的最佳方法 现在我的预订流程包含4个步骤4个视图。这4个视图中的每个视图都有自己的链接模型 假设在第一页,我保存了诸如出发/返回日期等信息。该信息存储在模型中。如何以最佳方式将此信息传递给其他模型?我不认为创建一个最终包含所有4个模型的viewmodel是一个好的解决方案 我试图做的是创建一个可以保存数据的类。在进入下一步之前,我将把数据保存到这个类中,并将所需的数据存储到下一个模型中 场景如下所示: 使用步骤1模型BookingMode

我需要一些帮助,以便找到保存用户在迷你预订网站中选择的数据的最佳方法

现在我的预订流程包含4个步骤4个视图。这4个视图中的每个视图都有自己的链接模型

假设在第一页,我保存了诸如出发/返回日期等信息。该信息存储在模型中。如何以最佳方式将此信息传递给其他模型?我不认为创建一个最终包含所有4个模型的viewmodel是一个好的解决方案

我试图做的是创建一个可以保存数据的类。在进入下一步之前,我将把数据保存到这个类中,并将所需的数据存储到下一个模型中

场景如下所示:

使用步骤1模型BookingModel将数据存储到choices类 在显示视图之前,将必要的数据从choices类发送到新模型RouteModel。 使用步骤2模型RouteModel将数据存储到choices类 在显示视图之前,将必要的数据从choices类发送到新模型TpaModel。 等等

现在我可以在步骤1中将数据保存到choices类,但是当我尝试将数据发送到其他模型时,它失败了,因为choices中的字段为空

public class Choices
{      
    public DateTime Departuredate { get; set; }
    public DateTime Returndate { get; set; }      
}
如何加载数据并在步骤2中为控制器创建模型:

RouteController步骤2:

创建RouteModel的帮助器类


是因为我创建了一个新的选项实例,而它是空的吗?

是否有任何特殊原因使您不在一个页面上执行此操作并在“向导”中显示/隐藏每个步骤。为什么每一步都是不同的控制器?是的,除非您传递了一个设置了正确值的选项实例,否则DepartureDate和ReturnDate将是默认的DateTime。MinValue我不确定我是否理解您的意思,但是我如何才能在我的RouteModelService类中创建一个包含值的选项实例呢?您似乎想让一个简单的练习变得复杂,但是您的方法需要是公共RouteModel CreateRouteModelDateTime departureDate,DateTime ReturnDate-即将值传递给该方法,以便您可以设置它们
 // GET: Routes
    public ActionResult Index()
    {
        var model = _routeModelService.CreateRouteModel();
        return View(model);
    }
public class RouteModelService
{
    private Choices _Choices;

    public RouteModelService()
    {
        _Choices = new Choices();
    }

    public RouteModel CreateRouteModel(RouteModel model = null)
    {
        if (model == null)
        {
            model = new RouteModel()
            {

            };

            model.DepartureDate = _Choices.Departuredate;
            model.ReturnDate = _Choices.Returndate;

        }
        return model;
    }
}