发现字典对象中存在一些值
find some value is present in Dictionary Object
我有一个字典 如下。
key = lookupid::lookupschema::lookupcolumn
value = lookupvalue
Dictionary<string, string> KeyValueLookup1 = new Dictionary<string, string>();
KeyValueLookup1.Add("1::ldap::state","TX");
KeyValueLookup1.Add("2::ldap::state", "MN");
KeyValueLookup1.Add("3::ldap::state", "CF");
KeyValueLookup1.Add("4::ldap::language", "EN");
KeyValueLookup1.Add("5::ldap::language", "FR");
现在我从用户那里得到了以下数据。
示例 1:
schemaname = ldap
lookupcolumn = state
and value = MN.
现在我需要查明 MN 在 KeyValueLookup1 中是否可用。
sample2:
schemaname = ldap
lookupcolumn = language
and value = TA.
现在我需要查明 TA 在 KeyValueLookup1 中是否可用。
此外,我还必须确保正在查看的值也具有这些关键参数someid::schemaname::lookupcolumn
试试这个
var schemaname = "ldap";
var lookupcolumn = "language";
var value = "TA";
var ifAvailable = IfAvailable(KeyValueLookup1, schemaname, lookupcolumn, value); // false
schemaname = "ldap";
lookupcolumn = "state";
value = "MN";
ifAvailable = IfAvailable(KeyValueLookup1, schemaname, lookupcolumn, value); // true
public bool IfAvailable(Dictionary<string, string> KeyValueLookup, string schemaname, string lookupcolumn, string value)
{
var result = false;
foreach (KeyValuePair<string, string> kvp in KeyValueLookup)
{
if (kvp.Key.Contains("::" + schemaname + "::" + lookupcolumn) && kvp.Value.Contains(value))
{
result = true;
break;
}
}
return result;
}
我有一个字典
key = lookupid::lookupschema::lookupcolumn
value = lookupvalue
Dictionary<string, string> KeyValueLookup1 = new Dictionary<string, string>();
KeyValueLookup1.Add("1::ldap::state","TX");
KeyValueLookup1.Add("2::ldap::state", "MN");
KeyValueLookup1.Add("3::ldap::state", "CF");
KeyValueLookup1.Add("4::ldap::language", "EN");
KeyValueLookup1.Add("5::ldap::language", "FR");
现在我从用户那里得到了以下数据。 示例 1:
schemaname = ldap
lookupcolumn = state
and value = MN.
现在我需要查明 MN 在 KeyValueLookup1 中是否可用。
sample2:
schemaname = ldap
lookupcolumn = language
and value = TA.
现在我需要查明 TA 在 KeyValueLookup1 中是否可用。
此外,我还必须确保正在查看的值也具有这些关键参数someid::schemaname::lookupcolumn
试试这个
var schemaname = "ldap";
var lookupcolumn = "language";
var value = "TA";
var ifAvailable = IfAvailable(KeyValueLookup1, schemaname, lookupcolumn, value); // false
schemaname = "ldap";
lookupcolumn = "state";
value = "MN";
ifAvailable = IfAvailable(KeyValueLookup1, schemaname, lookupcolumn, value); // true
public bool IfAvailable(Dictionary<string, string> KeyValueLookup, string schemaname, string lookupcolumn, string value)
{
var result = false;
foreach (KeyValuePair<string, string> kvp in KeyValueLookup)
{
if (kvp.Key.Contains("::" + schemaname + "::" + lookupcolumn) && kvp.Value.Contains(value))
{
result = true;
break;
}
}
return result;
}