2016-01-04 16 views
-2

我試圖將我的ID從我的數據庫中取出,但是我現在嘗試了一些ser ways方法,但沒有任何運氣。我不能使用@Model.????後應該輸入什麼。查找是因爲我將它作爲IEnumerable取出,因爲我使用它來打印出網站中另一個地方的所有表格。從IEnumerable中取出一個唯一的ID

CODE:

@model IEnumerable<ForumMvc.Models.Category> 
@{ 
    ViewBag.Title = "Home Page"; 
} 
<div style="margin-bottom: 50px; margin-top: 5px;" class="col-sm-8 col-sm-offset-2 CategoryBorder CommentHelper"> 
<div class="CategoryHead"> 
    <p id="categoryTitle">Predictions <i style="font-size: 15px;">Only for logged in members!</i></p> 
</div> 
<div class="col-sm-12"> 

</div> 

+1

你想在視圖中顯示什麼?爲什麼你的模型是一個'IEnumerable'而不是'Category'對象?你的控制器的代碼在哪裏?你能否回答這些問題,因爲我們很難理解這個問題。謝謝 – Christos

+2

您沒有提供足夠的上下文。模型是如何生成的('IEnumerable ')?此視圖是否預期顯示多個對象或單個對象? –

+0

@if(Model.Category.CategoryId == 6){您的代碼在這裏} –

回答

1

的@model指令後指定的類是什麼你給從控制器代碼視圖。

如果你只是想顯示一個項目,你既可以得到從枚舉的項目在您看來

@{ 
    var item = Model.FirstOrDefault(category => category.Id == 6) 
} 
<span>@item.Id</span> 

或更改控制器只取一個項目並更改視圖,使您的模型是一個類別。

舉例來說,如果你有類似​​您的控制器動作的請求的URL可能看起來像這樣:

public ActionResult Item(int id) { 
    using (ApplicationDbContext db = new ApplicationDbContext()) { 
     Category model = db.Categories.Find(id); 
     return View(model); 
    } 
} 

和你的看法可能會然後用這個代替顯示這一點。

@model ForumMvc.Models.Category