我在我的數據庫中有一個表。我想獲得名爲NumOfView的列的最大值。我用這個代碼:使用LINQ從表中獲取最大值
var advert=(from ad in storedb.Ads
where ad.AdScope == "1"
select ad.NumOfView).Max();
它的工作原理,但是當有兩個或兩個以上相同的最大值它不工作,並出現以下消息:
序列包含多個元素
我現在該做什麼?你的答案將非常有用。由於
我在我的數據庫中有一個表。我想獲得名爲NumOfView的列的最大值。我用這個代碼:使用LINQ從表中獲取最大值
var advert=(from ad in storedb.Ads
where ad.AdScope == "1"
select ad.NumOfView).Max();
它的工作原理,但是當有兩個或兩個以上相同的最大值它不工作,並出現以下消息:
序列包含多個元素
我現在該做什麼?你的答案將非常有用。由於
你可以嘗試以下方法:
var advert = storedb.ads
.Where(a => a.AdScope == "1")
.OrderByDescending(a => a.NumOfView)
.First();
請看一個例子:
private void button1_Click(object sender, EventArgs e)
{
List<int> lista = new List<int>();
lista.Add(1);
lista.Add(2);
lista.Add(2);
lista.Add(3);
lista.Add(3);
var query = (from lt in lista
orderby lt descending
select lt).FirstOrDefault<int>();
textBox1.Text = query.ToString();
}
var advert = storedb.ads
.Where(a => a.AdScope == "1")
.Select(a => a.NumOfView)
.Max()
.first();
哪裏 「出現」 該消息?如果它是例外的一部分,請發佈完整的堆棧跟蹤。 –
在末尾加上'.First()') – bluevector
Add FirstOrDefault – user1166147