【问题标题】:How do I get parts of Blacklist checked如何检查黑名单的部分内容
【发布时间】:2015-10-06 22:04:13
【问题描述】:
if (!blacklist.Contains(tabName) && (allowedSchemas.Contains(schName)) )
{
    string schemaname = GetStringFromReader(reader, "SchemaName");
    string tablename = GetStringFromReader(reader, "TableName");
    string description = GetStringFromReader(reader, "Description");
    string columnname = "null";

    tabInfo.Add(new TableInfo(schemaname, tablename, columnname, description));
}

这是我的代码我有一个问题。 例如,我有 tabName= BSPname 并且在我的 Blacklist= BSP 中。 所以我需要得到一个真实的。

现在它只在 Blacklist == tabName 时才给我。

所以我需要像 MSSQL 中这样的东西:tabName NOT LIKE %@blacklist%

希望你能理解我的问题

贾尼克

【问题讨论】:

  • 黑名单结构
  • 尝试第二种解决方案
  • blacklist 是一个包含一个或多个字符串的数组,例如 String[] blacklist = {"db","ZPR"}
  • 我更新了我的答案检查它是否适合你..

标签: c# arrays sql-server linq sql-like


【解决方案1】:

你需要像这样tabName NOT LIKE %@blacklist% 而不是你需要签入字符串,这意味着你需要在字符串上应用包含,如下所示

var match = blacklist.FirstOrDefault(s=>tabName.ToUpper().Contains(s.ToUpper()));
if( match==null && (allowedSchemas.Contains(schName)) )
{
  ..your code
}

【讨论】:

  • 对不起,我是新来的,我还以为我还不能投票
  • @I3_SUZO - 无需感谢...您的接受等于感谢...无需抱歉
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-05-16
  • 2017-06-27
  • 2021-04-16
  • 1970-01-01
  • 1970-01-01
  • 2014-09-11
  • 1970-01-01
相关资源
最近更新 更多