Web API - 如何删除区分大小写?
WebAPI - How can I remove case sensivity?
我正在 WebAPI 中执行搜索功能,但如果它与 XML 数据相对应,它只会 return 搜索该项目。例如,如果我写 "Milk" 或 "Apple",它只会 return 该项目。如果我写 "milk"、"apple" 或者 "aPpLe",我怎样才能使这些项目成为 return?
控制器:
public IHttpActionResult GetItems(string name)
{
List<Item> allItems = GetAllItems();
return Ok(allItems.Where(i => i.Name.Contains(name)));
}
您可以将字符串转换为小写。
public IHttpActionResult GetItems(string name)
{
List<Item> allItems = GetAllItems();
return Ok(allItems.Where(i => i.Name.ToLower().Contains(name.ToLower())));
}
我没有测试过,但应该可以。
代码
public IHttpActionResult GetItems(string name)
{
List<Item> allItems = GetAllItems();
//We are ignoring the Case Sensitivity and comparing the items with name
return Ok(allItems.Where(x => x.Name.Equals(name,StringComparison.CurrentCultureIgnoreCase));
}
我正在 WebAPI 中执行搜索功能,但如果它与 XML 数据相对应,它只会 return 搜索该项目。例如,如果我写 "Milk" 或 "Apple",它只会 return 该项目。如果我写 "milk"、"apple" 或者 "aPpLe",我怎样才能使这些项目成为 return?
控制器:
public IHttpActionResult GetItems(string name)
{
List<Item> allItems = GetAllItems();
return Ok(allItems.Where(i => i.Name.Contains(name)));
}
您可以将字符串转换为小写。
public IHttpActionResult GetItems(string name)
{
List<Item> allItems = GetAllItems();
return Ok(allItems.Where(i => i.Name.ToLower().Contains(name.ToLower())));
}
我没有测试过,但应该可以。
代码
public IHttpActionResult GetItems(string name)
{
List<Item> allItems = GetAllItems();
//We are ignoring the Case Sensitivity and comparing the items with name
return Ok(allItems.Where(x => x.Name.Equals(name,StringComparison.CurrentCultureIgnoreCase));
}