【问题标题】:C# Is it possible to check if any specific digit is present in an ID? [duplicate]C#是否可以检查ID中是否存在任何特定数字? [复制]
【发布时间】:2016-03-10 16:01:03
【问题描述】:

我想有一个搜索选项,其中

1.用户将键入与数据库表中的名称匹配的任何字母。

这很顺利。

string userinput = "hel"

List<string> queryResult = _myContext.Products
  .Where(r => r.Name.Contains(userinput))
  .Select(r => r.Name)
  .ToList();

2。如果 ID 中存在该数字/数字,用户将键入任何与 ID 匹配的数字,它应该给我这些 ID 的列表

我可以做这样的事情吗?

int queryId= 12;

_myContext.Products.Where(r => r.ID.contains(queryId)).Select(r => r.ID).ToList();

【问题讨论】:

  • 您必须将两者都转换为字符串才能做到这一点。

标签: c# linq list


【解决方案1】:
string queryId = "12";

List<string> queryResult = _myContext.Products
  .Where(r => r.Id.Tostring().Contains(queryId))
  .Select(r => r.ID)
  .ToList();

【讨论】:

  • 据我所知,ToString 不受 EF 支持,您应该检查一下。
  • 除了@octa 所说的,我想我之前已经问过你这个问题了,但你能否在你的答案中添加一些解释,而不是转储“固定”代码并让 OP 和后来的访问者计算看看你改变了什么?
  • @CodeCaster 我编辑了我的答案
  • 您没有添加任何解释。无论如何Convert.ToString() 将给出相同的异常:无法转换为 SQL 查询。
  • 您只是从副本中复制了代码,您的答案中仍然没有解释。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-17
  • 2015-09-14
  • 1970-01-01
  • 1970-01-01
  • 2019-12-11
  • 2010-12-20
相关资源
最近更新 更多