在控制器中,我执行一个ViewBag,然后将其传输到视图,然后在其中填充数据并希望在发布请求中发送它,但是viewbag返回null,如何从ViewBag返回所选数据< / p>
答案 0 :(得分:2)
对不起,但是抱歉,这不是应该使用ViewBag变量的方式。它用于从Controller到视图(在客户端上)共享少量数据,而不是相反。
要将数据返回服务器,您需要明确地从客户端视图中将请求中需要的数据回发到服务器。
让我们分解一下
@foreach (var item in ViewBag.List)
{
<option value="@item.Id">@item.Name</option>
}
在上面的代码中,ViewBag应该作为动态变量存在,并且如果在客户端请求视图时在视图包对象中设置了List,它将包含您放置在其中的所有数据。
<button class="btn" type="submit" name="action">
Submit
</button>
在这里,在上面的html中,您现在尝试回发选择的任何选项。您将需要在此处指定一个端点,该端点将接收表单数据并执行所需的任何操作
答案 1 :(得分:0)
我将从MODEL中获取更多数据
模型
public string Name{ get; set; }
查看
@model IEnumerable<*YourProjectName*.Models.*ModelName*>
上面的代码,在* *之间将其更改为正确的项目名称和型号名称。 编写@model
后,它应该自动执行 @foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.Name)
</td>
</tr>
}