获取有关如何在字符串列表中查找字符串值的大量答案。 但不是列表中的字符串类型,然后查询这些字符串。我试图返回每个具有用户输入的任何sting值的Listitem,如全局搜索。我想使用Linq,但旧学校也很好。
我的研究底部。
我有一个Garage类,其中包含许多不同变量类型的列表。
[Serializable()]
public class Garage
{
public static BindingList<Vechicle> VechicleList = new
BindingList<Vechicle>();
基于下面的Vechicle类:
[Serializable()]
public class Vechicle
{
//String formatting for Useraccount section and main list
private string HeaderStringFormat = "{0,-8} {1,-15} {2,-15} {3,-10:c} {4,-10}
{5,-5} {6,-10}";
public string Make { get; set; }
public string Model { get; set; }
public string Color { get; set; }
public decimal Price { get; set; }
public double KilometerReading { get; set; }
public Image Pic { get; set; } = Properties.Resources.Default;
public bool IsSold { get; set; } = false;
public DateTime DateSold { get; set; }
我想查询此列表中的所有字符串变量,然后通过查询字符串查询这些变量,如下所示。如果可能的话,我不想用trycatch审阅每个项目。
到目前为止,这是我的代码:
private void Txt_Search_TextChanged(object sender, EventArgs e)
{
string query = Txt_Search.Text.Trim();
List<Vechicle> SearchList = new List<Vechicle>();
foreach (Vechicle v in Garage.VechicleList.Where()
//Stuck here unsure how to get all values of strings to then query
}
我看过的东西,但似乎无法找到答案
c# - 在列表中找到匹配的最简洁方法 - 堆栈溢出
匹配字符串的列表中的foreach项目 - Google搜索
c# - 如何比较foreach内部的值 - Stack Overflow
c# - 带有where子句的Foreach? - 堆栈溢出
foreach where - Google搜索
c# - 如何遍历List并抓取每个项目? - 堆栈溢出
foreach string in list - Google搜索
列表的每个字符串中的foreach字符串变量 - Google搜索
列表中的foreach字符串 - Google搜索
foreach string - Google搜索
c# - 在类列表中查找类元素 - 堆栈溢出
在c#类中搜索字符串 - Google搜索
在课堂中搜索字符串 - Google搜索
答案 0 :(得分:0)
谢谢你们 明确地为此链接How to iterate all "public string" properties in a .net class
private string[] GetPublicStringProperties()
{
return this.GetType()
.GetProperties(BindingFlags.Public | BindingFlags.Instance)
.Where(pi => pi.PropertyType == typeof(string))
.Select(pi => pi.Name)
.ToArray();
}
@Cameron Aavik:)