我想将对象存储在List中,因此 创建了一个包含3个属性的类; PROP1。 prop2和prop3。
要将新项目添加到我正在使用的列表
_st.Add(new Bld(100,20,"Test1");
_st.Add(new Bld(101,20,"Test2");
_st.Add(new Bld(102,54,"Test3");
现在:如何搜索列表以获取Item的索引
包含myObj.prop2 = 20 AND myObj.prop3="Test1"
?
我尝试过像
这样的东西_st.Where(tk => tk.prop1 == 1000 AND tk.Title == "Test1");
但这显然不起作用。
知道如何解决这个问题吗?
提前致谢
答案 0 :(得分:5)
您应该使用FindIndex方法,并使用&&
代替AND
_st.FindIndex(tk => tk.prop1 == 1000 && tk.Title == "Test1");
答案 1 :(得分:2)
答案 2 :(得分:1)
SQL运算符不需要应用:
_st.Where(tk => tk.prop1 == 1000 && tk.Title == "Test1");
答案 3 :(得分:0)
你必须尝试这个:FindIndex Method
int index = _st.FindIndex(tk => tk.prop1 == 1000 && tk.Title == "Test1");
OR
int index1 = _st.Select((tk, index) => new { _st = tk, Index = index })
.FirstOrDefault(tk => tk._st.prop1 == 1000 && tk._st.Name_ar == "Test1")
.Index;