我们有一个使用两步流程的工作申请。我需要稍微调整一下。我能看到这样做的最简单方法是从第一步中删除应用程序创建阶段,然后将其传递给第二步,这是一个单独的视图。
第1页 - 第1步
public ActionResult Apply(JobApplicant jobapp, string HiddenJobId)
{
jobapp.JobID = Convert.ToInt32(HiddenJobId);
//JobsHelper.CreateJobApplicant(jobapp);
return View("ApplyResume", jobapp);
}
以上代码用于CreateJopApplication()
。我对此进行了评论,现在将其传递给下一步/页面。
然而,一旦在这个新页面上,我就会得到一个[HttpPost]
,它会占用jobapp
,但此时它全部为空。
jobapp(JobApplication)大约有140列,我不想为所有这些列创建隐藏文本字段。是否有更简单的方法将模型传递到两个页面?
第2步 - 第2页
[HttpPost]
public ActionResult Upload(HttpPostedFileBase file, string applicantId, string coverLetter, JobApplicant jobapp)
{
// jobapp is null during this entire step, passed in null its as if the page before never had it.
JobsHelper.CreateJobApplicant(jobapp);
.......
答案 0 :(得分:1)
您可以使用TempData
。它就像一个会话状态,但一旦被使用就被删除了。这是一次往返的好方法。
使用像MVC这样的无状态框架,您可以: