查询哈希表键 LINQ 表达式 C#
Querying Hashtable key LINQ expression C#
我有一个包含 key/value 对的哈希表,如下所示,
Hashtable h1 = new Hashtable();
h1.Add("@USD_Type","123");
public class USDParameters
{
public const string USDType = "@USD_Type";
public const string USDId = "@USD_ID";
public const string USDName = "@USD_Name";
}
有时,我的哈希表中可能还有 "@USD_ID"
、"@USD_Name"
个键。
我想查询哈希表中以 @STD_
开头并与 USDParameters
中的名称匹配的所有键。如果在哈希表中找不到该名称,那么我需要构建一个字符串,该字符串具有哈希表中的键(减去@)。
例如“哈希表中缺少以下键 - USD_ID、USD_Name”
具有挑战性的部分是查询键:
var keys = h1.Keys.Cast<string>()
.Where(x => x.StartsWith("@STD_"));
一旦你有了这个可枚举类型的列表,就可以更容易地查找丢失的键。
我有一个包含 key/value 对的哈希表,如下所示,
Hashtable h1 = new Hashtable();
h1.Add("@USD_Type","123");
public class USDParameters
{
public const string USDType = "@USD_Type";
public const string USDId = "@USD_ID";
public const string USDName = "@USD_Name";
}
有时,我的哈希表中可能还有 "@USD_ID"
、"@USD_Name"
个键。
我想查询哈希表中以 @STD_
开头并与 USDParameters
中的名称匹配的所有键。如果在哈希表中找不到该名称,那么我需要构建一个字符串,该字符串具有哈希表中的键(减去@)。
例如“哈希表中缺少以下键 - USD_ID、USD_Name”
具有挑战性的部分是查询键:
var keys = h1.Keys.Cast<string>()
.Where(x => x.StartsWith("@STD_"));
一旦你有了这个可枚举类型的列表,就可以更容易地查找丢失的键。