你是否已經有了一個數據庫上下文/庫建立在你的MVC項目數據庫進行通信?下面我假設你有一個名爲dbContext的數據庫上下文。
注:如果你不使用剃刀,取代「@」與「<%」並關閉所有與「%>」
您可以把項目的ViewBag,或在模型(我更喜歡模型)如下。我不確定你想要做什麼,所以我把它們放在一個列表中。你需要一個課程來放置你的印象信息,我已經在下面添加了它;
型號代碼:
public class MyModel
{
public class ImpressionInfo //just used to store your results sub class of the model
{
public ImpressionInfo(id, impression, diaryImpressionCount)
{
Id = id;
Impression = impression;
DiaryImpressionCount = diaryImpressionCount
}
public int Id { get; set; }
public int Impression { get; set; } //is this an int? you didn't say
public int DiaryImpressionCount { get; set; }
}
public MyModel()
{
var impressionInfo = new List<ImpressionInfo>()
foreach (var di in dbContext.DiaryImpressions)
{
ImpressionInfos.Add(new ImpressionInfo(
di.Id,
di.Impression,
dbContext.DiaryPosts
.Count(dp => dp.ImpressionsId == di.ID));
}
}
public List<ImpressionInfo> ImpressionInfos { get; set; }
然後在視圖
查看代碼:
@model MyModel
@if(Model.ImpressionInfos.Count > 0)
{
<table>
<tr>
<td>Impression</td>
<td>Count</td>
</tr>
foreach (var i in Model.ImpressionInfos)
{
<tr>
<td>@i.Impression</td>
<td>@i.DiaryImpressionCount</td>
</tr>
}
}
else
{
<p>No Impression infos</p>
}
希望這有助於。
這是LINQ到SQL,還是你使用LINQ來加入你的對象通過datareader檢索? –