C#按字符串删除列表中的项目
我正在学习C#,我遇到的问题之一是按字符串搜索列表中的项目。它不断出现错误,我不知道如何修复。我一直在网上搜索,没有找到有效的解决方案。可能是我误解了答案,我希望我能通过这种方式找到解决办法C#按字符串删除列表中的项目,c#,C#,我正在学习C#,我遇到的问题之一是按字符串搜索列表中的项目。它不断出现错误,我不知道如何修复。我一直在网上搜索,没有找到有效的解决方案。可能是我误解了答案,我希望我能通过这种方式找到解决办法 bl = bn.Vind("JA"); Test(bl.Count == 2, "2 bezettingen voor passagier met tekst 'JA' in zijn naam."); public List<Bezetting> Vind(string v)
bl = bn.Vind("JA");
Test(bl.Count == 2, "2 bezettingen voor passagier met tekst 'JA' in zijn naam.");
public List<Bezetting> Vind(string v)
{
for (int i = 0; i < _items.Count; i++)
{
if (_items.Contains(v)) -- Argument1: cannot convert from 'string' to 'ClassLibrary.Bezettingen'
return _items;
}
}
}
bl=bn.Vind(“JA”);
测试(bl.Count==2,“2贝塞廷根·沃尔·帕萨吉尔在济纳姆遇到了泰克斯特'贾'”);
公共列表VIN(字符串v)
{
对于(int i=0;i<\u items.Count;i++)
{
if(_items.Contains(v))--Argument1:无法从“string”转换为“ClassLibrary.Bezettingen”
退货(物品);;
}
}
}
希望这能让我在接下来的日子里继续前进
提前谢谢 您正在查看
列表
对象上的包含(…)
。这将尝试将v
的值与列表中的项目进行比较。如果列表中没有字符串,则此操作将不起作用。如果它们是字符串,它将比较整个项目,而不是项目内的项目
你想要像这样的东西。。。(首场比赛)
。。。或者这个。。。(全部比赛)
您正在查看
列表
对象上的.Contains(…)
。这将尝试将v
的值与列表中的项目进行比较。如果列表中没有字符串,则此操作将不起作用。如果它们是字符串,它将比较整个项目,而不是项目内的项目
你想要像这样的东西。。。(首场比赛)
。。。或者这个。。。(全部比赛)
我真的不明白你在你的方法里面做什么,这很混乱,但是既然你努力了,我就给你一个解决方案 要在列表中搜索字符串,您可能希望采用以下方法:
public List<YourModel> Search(string keyword)
{
//here you should populate your list from database or wherever! for now im just initializing it.
List<YourModel> myList = new List<YourModel>();
//you can have inside validation as well e.g:
if(myList.Any(x=> x.Contains(keyword)))
{
//if you simply want to get First Set of Data
//return myList.FirstOrDefault(x=> x.Contains(keyword));
return myList.Where(x=> x.Contains(keyword)).ToList();
}
else
return myList;
}
公共列表搜索(字符串关键字)
{
//在这里,您应该从数据库或任何地方填充您的列表!现在我只是初始化它。
List myList=新列表();
//您还可以进行内部验证,例如:
if(myList.Any(x=>x.Contains(关键字)))
{
//如果您只是想获取第一组数据
//返回myList.FirstOrDefault(x=>x.Contains(关键字));
返回myList.Where(x=>x.Contains(关键字)).ToList();
}
其他的
返回myList;
}
我真的不明白您在您的方法中做了什么,这非常令人困惑,但既然您已经做出了努力,我将给您一个解决方案
要在列表中搜索字符串,您可能希望采用以下方法:
public List<YourModel> Search(string keyword)
{
//here you should populate your list from database or wherever! for now im just initializing it.
List<YourModel> myList = new List<YourModel>();
//you can have inside validation as well e.g:
if(myList.Any(x=> x.Contains(keyword)))
{
//if you simply want to get First Set of Data
//return myList.FirstOrDefault(x=> x.Contains(keyword));
return myList.Where(x=> x.Contains(keyword)).ToList();
}
else
return myList;
}
公共列表搜索(字符串关键字)
{
//在这里,您应该从数据库或任何地方填充您的列表!现在我只是初始化它。
List myList=新列表();
//您还可以进行内部验证,例如:
if(myList.Any(x=>x.Contains(关键字)))
{
//如果您只是想获取第一组数据
//返回myList.FirstOrDefault(x=>x.Contains(关键字));
返回myList.Where(x=>x.Contains(关键字)).ToList();
}
其他的
返回myList;
}
什么错误?什么是\u项目
?你到底在做什么?要在列表中搜索吗?使用关键字字符串?然后返回基于该关键字的列表?\u items是一个列表,搜索来自一个字符串。搜索后,它应该给出包含搜索字符串的列表中元素的所有结果。有什么错误?什么是\u项目
?你到底在做什么?要在列表中搜索吗?使用关键字字符串?然后返回基于该关键字的列表?\u items是一个列表,搜索来自一个字符串。搜索后,它应该给出包含搜索字符串的列表中元素的所有结果。返回myList.Any(x=>x.Contains(“关键字”)).ToList()代码>无效.Any()
返回bool
。谢谢,这帮了大忙!我知道这并不容易,因为我只给了很短的一部分,但我觉得多给就太多了。我仍然收到错误:无法将lambda表达式转换为类型“YourModel”,因为它不是委托类型。是的,它确实需要类似于。其中(x=>x.YourProp.Contains(关键字))
因为x
属于YourModel
类型,而不是string
@ClintYourModel
是您在其中具有属性的类。如果没有属性,请确保创建一个类并定义属性。返回myList.Any(x=>x.Contains(“关键字”)).ToList()代码>无效.Any()
返回bool
。谢谢,这帮了大忙!我知道这并不容易,因为我只给了很短的一部分,但我觉得多给就太多了。我仍然收到错误:无法将lambda表达式转换为类型“YourModel”,因为它不是委托类型。是的,它确实需要类似于。其中(x=>x.YourProp.Contains(关键字))
因为x
属于YourModel
类型,而不是string
@ClintYourModel
是您在其中具有属性的类。如果你没有属性,请确保你创建了一个类并定义了你的属性。谢谢,让我离你更近了一步。仍然有错误,但我一直在寻找解决方案。编译器错误还是异常?显示\u项的定义
和bezeting的定义
谢谢,让我更近了一步。仍然有错误,但我一直在寻找解决方案。编译器错误还是异常?显示\u项的定义和设置的定义
public List<YourModel> Search(string keyword)
{
//here you should populate your list from database or wherever! for now im just initializing it.
List<YourModel> myList = new List<YourModel>();
//you can have inside validation as well e.g:
if(myList.Any(x=> x.Contains(keyword)))
{
//if you simply want to get First Set of Data
//return myList.FirstOrDefault(x=> x.Contains(keyword));
return myList.Where(x=> x.Contains(keyword)).ToList();
}
else
return myList;
}