C# - 无法将 lambda 表达式转换为 listitem
C# - Cannot convert convert lambda expression to listitem
Title="xxxxxxx yyyyyyy zzzzzz 1234RED 987";
Value="1234RED";
if (!dialogItems.Exists(x => x.Title == value))
throw new InvalidOperationException($"List does not have {value}.");
以上代码运行良好,将与标题进行比较。
我需要通过 Contains 而不是 Title 来比较值
需要指导
其他词 - 允许部分字符串匹配
您可以使用以下 lambda 表达式的变体来验证 Contains
A) 您可以检查 Title
是否包含 value
和
1) Exist
if (!dialogItems.Exists(x => x.Title.Contains(value)))
或
2) Any
if (!dialogItems.Any(x => x.Title.Contains(value)))
B) 您可以检查 Title
是否包含 value
并修剪所有前导和尾随空格并降低标题和值的大小写。它会增加您的价值与 Title
相匹配的机会
1) Exist
if (!dialogItems.Exists(x => x.Title.Trim().ToLower().Contains(value.Trim().ToLower())))
或
2) Any
if (!dialogItems.Any(x => x.Title.Trim().ToLower().Contains(value.Trim().ToLower())))
Title="xxxxxxx yyyyyyy zzzzzz 1234RED 987";
Value="1234RED";
if (!dialogItems.Exists(x => x.Title == value))
throw new InvalidOperationException($"List does not have {value}.");
以上代码运行良好,将与标题进行比较。
我需要通过 Contains 而不是 Title 来比较值 需要指导
其他词 - 允许部分字符串匹配
您可以使用以下 lambda 表达式的变体来验证 Contains
A) 您可以检查 Title
是否包含 value
和
1) Exist
if (!dialogItems.Exists(x => x.Title.Contains(value)))
或
2) Any
if (!dialogItems.Any(x => x.Title.Contains(value)))
B) 您可以检查 Title
是否包含 value
并修剪所有前导和尾随空格并降低标题和值的大小写。它会增加您的价值与 Title
1) Exist
if (!dialogItems.Exists(x => x.Title.Trim().ToLower().Contains(value.Trim().ToLower())))
或
2) Any
if (!dialogItems.Any(x => x.Title.Trim().ToLower().Contains(value.Trim().ToLower())))