繁体   English   中英

在C#中将通用列表传递给多参数方法

[英]Passing a generic list to a multi-parameter method in C#

在需要将三条信息传递给一个方法的程序上,该方法将依次根据传入的数据为表创建一行。

变量是:

var runningTally = new Dictionary<string, Dictionary<string, int>>();
var comments = query.ToList();
var columns = query.ToList();

我会这样调用该方法:

tReport.Rows.Add(row);
foreach (var key in _masterList.Keys)
{
    CreateRow(key, runningTally, columns);
} 

我希望我的方法签名看起来像这样:

private void CreateRow(string key, IDictionary<string, Dictionary<string, int>>
 runningTally, List<T> columns)

但这是行不通的(编辑器抱怨找不到“ T”类型)。 我希望有人能告诉我如何正确地将通用列表用作方法的参数。 我感谢任何帮助和建议!

您需要将方法标记为通用。

像这样:

private void CreateRow<T>(string key, IDictionary<string, Dictionary<string, int>>
 runningTally, List<T> columns)

请注意,方法名称本身已添加了通用参数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM