【发布时间】:2018-11-15 20:56:24
【问题描述】:
我正在将代码 sn-p 粘贴到 c# 控件的下方。我无法弄清楚的是,我正在添加到 AddPerson 的 formViewModel 已正确填充,但是当我调用 RedirectToAction 到下面的“SaveForm”方法并传递 formViewModel 时,它在“ SaveForm”方法。
对我不理解的内容有什么建议吗?
谢谢,
[HttpPost]
public IActionResult AddPerson(GikFormViewModel formViewModel)
{
if(formViewModel.Items == null)
{
//formViewModel.Items.Add(new GikItemViewModel() { })
formViewModel.Items = new List<GikItemViewModel>();
}
if (!ModelState.IsValid)
{
return View("Index", formViewModel);
}
// REDIRECTING HERE TO "SaveForm" Formatting is not properly done
return RedirectToAction("SaveForm", formViewModel);
//return View("Index", formViewModel);
}
public IActionResult SaveForm(GikFormViewModel formViewModel)
{
var person = formViewModel.Person;
var items = formViewModel.Items;
var gikItems = new Collection<Gikitem>();
//var gikPerson = new Gikperson();
//var gikItem = new Gikitem();
var gikPerson = new Gikperson()
{
Organization = person.Organization,
Title = person.Title,
Name = person.FirstName + " " + person.LastName,
AddressLineOne = person.AddressLineOne,
AddressLineTwo = person.AddressLineTwo == null ? null : person.AddressLineTwo,
City = person.City,
State = person.State,
Zipcode = person.Zipcode,
Phone = person.Phone,
DoNoContact = person.DoNotContact == true ? 1 : 2,
Email = person.Email
};
【问题讨论】:
-
您不能使用
RedirectToAction传递包含复杂属性或集合的模型(查看您正在生成的 url 以了解 - 该方法不会执行递归以生成复杂属性的查询字符串值)
标签: c# asp.net-mvc