我如何得到黑名单的部分检查

本文关键字:检查 黑名单 何得 | 更新日期: 2023-09-27 18:03:23

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和在我的黑名单= BSP。所以我需要得到一个true。

现在它只给我true如果黑名单== tabName。

所以我需要在MSSQL: tabName NOT like %@blacklist%

我希望你能理解我的问题

Janik

我如何得到黑名单的部分检查

你需要像这样的tabName NOT LIKE %@blacklist%,而不是你需要检查字符串,这意味着你需要在字符串上应用contains,如下所示

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