我想生成用于创建哈希表对象的代码,并为其分配密钥和值编程。它应该类似于
Hashtable ht = new Hashtable();
ht.Add( "key1", "value1" );
ht.Add( "key2", "value2" );
ht.Add( "key3", "value3" );
例如
CodeMemberMethod testMethod = new CodeMemberMethod();
testMethod.Name = "Test" + mi.Name + "_" + intTestCaseCnt;
testMethod.Attributes = MemberAttributes.Public;.....
这里它创建了一个方法programacticaly现在我想创建一个哈希表,所以我问怎么样?
答案 0 :(得分:5)
对于代码生成,请考虑Text Template Transformation Toolkit(T4)
此模板......
Hashtable ht = new Hashtable();
<#
foreach (var obj in DataSource)
{
#>
ht.Add( "<#= obj.Key #>", "<#= obj.Value #>" );
<#
}
#>
...会生成此输出......
Hashtable ht = new Hashtable();
ht.Add( "key1", "value1" );
ht.Add( "key2", "value2" );
ht.Add( "key3", "value3" );
...
ht.Add( "keyN", "valueN" );
其中N是数据源中的记录数。
最好的是,这是内置于Visual Studio 2008
我有很好的经历
答案 1 :(得分:1)
答案 2 :(得分:1)
CodeParameterDeclarationExpression hashTableParam =new CodeParameterDeclarationExpression();
hashTableParam.Name = "hastable";
hashTableParam.Type = new CodeTypeReference(typeof(System.Collections.Hashtable));
我正在寻找感谢您的努力
答案 3 :(得分:0)