1
我正在嘗試編寫一些LINQ,用於搜索存儲的項目中的值與列表中的任何值匹配的項目 - 如果它是一個字符串列表&搜索一個字符串,但是當它是一個枚舉(整數)列表我無法弄清楚。LINQ包含數組中的(int)項
List<MyEnum> categories = new List<MyEnum>();
categories.Add(MyEnum.Fred);
categories.Add(MyEnum.Bill);
categories.Add(MyEnum.Jim);
// MyTable.Category is of type MyEnum
return (from o in Table<MyTable>()
where categories.Any(val => o.Category.Contains(val))
select o).Count();
編輯進一步信息 -
的代碼是:
public int LocalOffersCount(double distance, List<LocalCategory> categories)
{
try
{
return (from o in Table<LocalOffer>() where categories.Any(val => o.Category.Contains(val)) select o).Count();
}
catch (Exception ex)
{
Log.Error("DatabaseService->LocalOffersCount: " + ex.Message);
return 0;
}
}
MyTable的包含各種項目, 「類別」 項目是一個LocalCategory枚舉從1開始將10
我得到的編譯錯誤是 -
方法的類型參數`System.Linq.Enumerable.Contains(this System.Collections.Generic.IEnumerable,TSource)'不能從用法中推斷出來。嘗試明確指定類型參數(CS0411)
什麼具體的錯誤(S)你好嗎? – 2013-03-25 17:39:40
爲什麼不編譯?什麼是錯誤? – AlexFoxGill 2013-03-25 17:40:16
「當它是一個枚舉(整數)列表」 - >錯誤#1。枚舉!=整數。但如果你真的發佈了這個錯誤,而不是僅僅說明它不會編譯,它將會對大衆有所幫助。你很可能會得到更快的答案,並且當你搜索它時,你會爲那些有同樣問題的人提供服務(我們不是在這裏幫助你*)。 – 2013-03-25 17:40:39