我有一個包含各種類型元素的數組。Visual C#用lambda表達式檢查數組元素的類型
我想構建一個lambda表達式,如果數組中存在特定的類型,將評估if子句爲真。
我嘗試以下和許多不同的方法,但我似乎並沒有得到它的權利:
var arraySourceText = EditorController.ActiveDocument
.ActiveSegmentPair
.Source
.AllSubItems
.ToArray();
if (arraySourceText.Any(o => o.GetType()) == typeof(string))
{
intStartingPH++;
}
任何意見是值得歡迎的。
注意:arraySourceText
是一個帶有自定義類型的API IEnumerable
。爲了簡化僞碼,我只假設了string
。
更新:由於該類型未通過API公開,只有類型的名稱,該解決方法基於Byyo的更正。我寫了一個單獨的方法來檢查類型的名稱,並返回一個bool
:
你的括號是錯誤的(也許一個錯字雖然):'arraySourceText.Any(O => o.GetType()== typeof運算(字符串)' –
感謝回覆,我添加了declaratio陣列中的一個和澄清的筆記。 – ib11