我有一個使用列表上的「任何」方法的函數。如何重構這個Linq函數?
List<String> list = Factory.ReturnList(); //Returns a list of all countries in Europe
我需要驗證列表中包含像部分字符串 「(DE)」 和 「(FR)」,...
Assert.Equal(list.Any(item=> item.Contains("(DE)")), true); Assert.Equal(list.Any(item=> item.Contains("(FR)")), true); Assert.Equal(list.Any(item=> item.Contains("(BE)")), true); Assert.Equal(list.Any(item=> item.Contains("(NL)")), true);
現在我想將它寫爲一個函數。我見過別人用這樣的代碼:
Func<IWebElement, bool> condition = item => item.Text == "something";
Assert.Equal(list.Any(condition), true);
我已經嘗試以下,但沒有奏效:
Func<List<String>, bool> condition = list.Any(x => x.Contains(input));
由於:
Cannot implicitly convert type 'bool' to 'System.Func<System.Collections.Generic.List<string>, bool>'
我怎樣才能在我的例子中這樣做?
「輸入」需要一個參數/變量,這樣的函數功能可以用不同的參數
「輸入」需要一個參數/變量,這樣可以Func鍵用不同的參數雖然被調用....你的解決方案不起作用,感謝.... –