我有一个foreach循环,显示我网站上的所有属性。
在该foreach循环中,我想计算每个属性有多少评论。我在将变量传递给循环时遇到了麻烦。这是我的代码:
foreach(var row in queryResults){
var propertycount = db.Query("SELECT * FROM Property_Reviews WHERE PropertyID = @0", row.PropertyID);
var counter = propertycount.Count();
<p>Property Name: @row.PropertyName
<p>Number of Reviews: @counter
}
任何想法,我出错了?
目前,此代码错误
非可调用成员'System.Collections.ObjectModel.ReadOnlyCollection.Count'不能像方法一样使用。
答案 0 :(得分:2)
尝试在计数后删除括号,即
propertycount.Count
答案 1 :(得分:2)
您不需要进行查询,然后计算&#34;计算&#34;属性
您可以直接执行&#34; SELECT COUNT&#34;:
var counter = db.Query("SELECT count(*) as counterField as myCountFROM Property_Reviews WHERE PropertyID = @0", row.PropertyID)[0].counterField;
<p>Number of Reviews: @counter </p>
或
var result = db.Query("SELECT count(*) as counterField as myCountFROM Property_Reviews WHERE PropertyID = @0", row.PropertyID)[0].counterField;
var counter = result[0].counterField;
<p>Number of Reviews: @counter </p>