如何在网络核心2.0中将数据从一个视图传输到另一个视图

时间:2018-03-05 08:08:33

标签: asp.net-core-2.0

我想创建另一个模型,从之前的视图传输一些数据。实际上我需要传输密钥来保存对象之间的关系。什么是最佳实践?

在我的情况下,我有一个代表汽车模型的视图,我需要启动一个下一个视图,表示包含汽车外键的部件。怎么做?

我需要在创建时将一些属性从一个模型/视图传输到另一个模型/视图。我的意思是传递外键需要在不同的视图(模型)中保持关系。我尝试使用表单,但网页似乎没有填写其他属性。

<form asp-action="CreateFromFirstView" asp-controller="secondControler" style="display:inline;">
        <input type="hidden" name="KeyID" value="@Model.KeyID" />
        <button type="submit" class="btn btn-imary">CreateFromFirstView</button>
    </form>

1 个答案:

答案 0 :(得分:0)

您可以创建一个ViewModel并将其发送到其他视图对象,如模型。

实施例

public ActionResult Index()
{
var vm = new VehicleDetailsViewController();
return View(vm);
}

[HttpPost]
public ActionResult Index(VehicleDetailsViewController vm)
{
 //Validation something wrong
if (!ModelState.IsValid) return View(vm);

 //Make what you want with all OK
return View("AllOk");
}