【问题标题】:foreach statement cannot operate on variables of type 'Oblig1.Models.User' because it does not contain a public definition for 'GetEnumerator'foreach 语句不能对“Oblig1.Models.User”类型的变量进行操作,因为它不包含“GetEnumerator”的公共定义
【发布时间】:2014-10-09 12:00:06
【问题描述】:

不断收到这个错误,似乎找不到我哪里出错了,任何人都可以伸出援助之手吗?

这是我的观点,Minside.cshtml:

@model Oblig1.Models.User
<br />
<br />
<br />

<!-- Nav tabs -->
<ul class="nav nav-tabs" role="tablist">
<li class="active"><a href="#home" role="tab" data-toggle="tab">Kontoinformasjon</a></li>
<li><a href="#profile" role="tab" data-toggle="tab">Ordrehistorikk</a></li>
</ul>

<!-- Tab panes -->
<div class="tab-content">
    <div class="tab-pane active" id="home">
        <br />
        <br />
        <table class="table">
            @foreach (var user in Model)
            {
                @user.Firstname
            }
        </table>

    </div>
    <div class="tab-pane" id="profile">Ordrehistorikk</div>
    <div class="tab-pane" id="messages">...</div>
    <div class="tab-pane" id="settings">...</div>
</div>

控制器:

    public ActionResult Minside()
    {
        var db = new PastaContext();

        string compareEmail = (string)Session["User"];
        User foundUser = db.Users.Find(compareEmail);
        if(foundUser == null)
        {
            return RedirectToAction("Index");
        }
        else
        {
            return View(foundUser);
        }           
    }

我也尝试将视图中的第一行更改为@model IENumberable。

我真正想要的只是将 1 个单个用户的信息列出到视图中。

【问题讨论】:

  • Oblig1.Models.User 是否实现了IEnumerable 接口?

标签: c# asp.net asp.net-mvc visual-studio


【解决方案1】:

您在文件顶部声明 MVC 模板的模型是用户

@model Oblig1.Models.User

因此您不需要 foreach,只需在视图中直接输入 FirstName。

@model.FirstName

【讨论】:

  • 哇,你让我哭了,它奏效了。非常非常感谢!
  • 没问题。我很高兴能帮上忙!
【解决方案2】:

你需要 IEnumerable 类型模型,像 foreach loop 这样的

@model IEnumerable<Oblig1.Models.User>

如果您有单个用户对象,则不需要 foreach 循环。 你可以写

@model.FirstName

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-03-08
    • 2016-03-27
    • 1970-01-01
    • 1970-01-01
    • 2012-08-19
    • 2018-06-01
    • 1970-01-01
    相关资源
    最近更新 更多