gpt4 book ai didi

c# - 使用类型作为参数

转载 作者:行者123 更新时间:2023-11-30 21:59:24 25 4
gpt4 key购买 nike

我有一个私有(private)静态函数,它有一个字符串参数和一个类型参数。我将这些传递给我的代码。但是,我专注于一个特定领域。

这是我的功能:

private static object GetCSVRecords(string path, Type t)
{
using (var txtReader = new StreamReader(path))
{
var csv = new CsvReader(txtReader);
var recordList = csv.GetRecords<t>();
}
return recordList;
}

我正在尝试将类型传递到 GetRecords<>。我得到的错误是 Cannot resolve symbol 't'。我做错了什么?

最佳答案

问题是 t 不是类型(在泛型调用中需要),它是对 Type 对象的引用。

您可以使您的方法通用:

private static object GetCSVRecords<T>(string path)
{
using (var txtReader = new StreamReader(path))
{
var csv = new CsvReader(txtReader);
var recordList = csv.GetRecords<T>();
return recordList;
}
}

旁注:您必须在声明变量的 using block 内返回值(或在 block 外使用特定类型声明它)。

关于c# - 使用类型作为参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29300659/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com