是否可以将模型数据从视图发送到不是该视图的控制器的控制器?

问题描述 投票:0回答:1

我还没找到类似的问题,所以我决定在这里问一下。

我对MVC比较新,可能在我的问题中有一些不正确的措辞,我只是想知道是否有可能做到这一点?

通常,我们正在处理ModelViewController耦合,我们返回ViewControllerModels/Json作为参数返回View,所以我们可以将Model绑定到View

我只是想知道我们是否有ViewA,ViewB ControllerA,ControllerB和ModelA,可以使用@Url.Action/LinkAjax方法将ModelA从ViewA发送到ControllerB的Action Method,因此,数据存储在从ControllerB返回时,ModelA可以显示在ViewB中吗?

我还没有任何代码,只是想知道这是否可行,如果可行,那么实现类似的方法是什么?

model-view-controller actionmethod url-action
1个回答
0
投票

你可以这样做:控制器B:

    public IActionResult ControllerB(ModelA data)
    {
        return View(data);
    }

查看A:

@foreach (var data in Model)
{
    <li>@Html.ActionLink(@data.ModelAProperty, "ControllerB", "ControllerBFileName", new { id = data.Sys.Id })</li>
}

查看B:

@model YourModel.Models.ModelA
<div>

<h3>@Model.ModelAProperty</h3>

<p>@Model.ModelAOtherProperty</p>
</div>

我相信这应该工作。我用之前的项目做过这个,但设置略有不同,但我相信我已正确修改它以满足您的需求。基本上,您使用第一个视图将数据传递给控制器​​,然后使用该控制器将数据传递到下一个视图。

© www.soinside.com 2019 - 2024. All rights reserved.