繁体   English   中英

使用.Contains检查字符串是否包含字符时出错

[英]Error when using .Contains to check if a string contains a character

我试图找出一个字符串是否包含一个字符。 我尝试了以下ViewBag.Options是一个字符串:

@ViewBag.Options.Contains('q')

但它给了我一个错误说:

'string.Contains(string)'的最佳重载方法匹配有一些无效的参数。

而且它是写的: string.Contains只有一个字符没有重载。

选项:

  • 使用@ViewBag.Options.Contains("q")
  • 使用@ViewBag.Options.IndexOf('q') != -1
  • 使用一些更复杂的LINQy方法(例如Any ) - 可行,但这里没有必要。 (我在适当的时候是LINQ的粉丝,但我不认为这是正确的方法;我不会为了它而开始在我的代码中引入lambda表达式)
  • 使用一些更复杂的正则表达式方法 - 再次,没有意义。

使用其中任何一个

  • @ViewBag.Options.Contains("q");
  • @ViewBag.Options.Any(x => x == 'q');

如果你坚持

  • @ViewBag.Options.Contains('q'.ToString());

错误是自我解释的。 .Contains的.Contains接受一个字符串,此方法没有重载需要一个字符。

在c#中使用单引号表示一个字符。

试试双引号:

@ViewBag.Options.Contains("q");

用这个:

@ViewBag.Options.Contains("q")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM