繁体   English   中英

传递简单的字符串列表以在 MVC 中查看而不使用模型

[英]Passing simple list of strings to view in MVC without using model

我想创建一个视图,列出发生的错误,同时在控制器中执行某些操作。 我知道如何在使用模型时创建视图,但是可以不使用模型来完成吗? 仅仅通过传递简单的字符串列表?

我为有错误的视图创建了一个操作:

    public ActionResult ListOfErrors(List<string> listOfErrors)
    {
        return View(listOfErrors);
    }

以及此操作的视图:

@model List<string>

<table>
    <thead>
        <tr>
            <th>
                Error
            </th>
        </tr>
    </thead>

    <tbody>
        @foreach (var item in Model)
        {
            <tr>
                <td>
                    @item.ToString();
                </td>
            </tr>
        }
    </tbody>
</table>

如果我这样做,我只会得到System.Collections.Generic.List``1[System.String]; . 我应该改变什么?

您可以在操作中使用所需名称(我的是 ErrorList)将变量设置到 ViewBag 中:

public ActionResult Index()
{
    ViewBag.ErrorList = new List<string>() { "Error 1", "Error 2" };
    return View();
}

然后你可以在你的视图中使用这个对象并发挥你的魔力:

<ul>
@foreach (string error in (List<string>)ViewBag.ErrorList)
{
    <li>error</li>
}</ul>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM