我的应用程序中有书籍列表,我正在尝试添加验证,以便不会将重复的书籍添加到列表中。验证应检查书名是否已出现在列表中,无论大小写如何,即小写“book1”和大写“BOOK1”应被视为相同。
到目前为止,我已经编写了以下代码:
public string Error
{
get
{
if (Books.Count() != Books.Select(x => new { x.Name.ToUpper(), x.CategoryID }).Distinct().Count())
{
return "Every Book and Category should be unique";
}
return string.Empty;
}
}
但它出现了以下错误:
Anonymous Type Projection Initializer Should be simple name or member access expression.
我应该如何检查案件?
最佳答案
问题出在这段代码中:
new { x.Name.ToUpper(),
C# 不知道该表达式的属性名称是什么,因此您需要明确说明应该调用什么:
new { Name = x.Name.ToUpper(),
关于c# - 在列表中查找重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23498082/