【问题标题】:How to create IReadOnlyCollection<T> method that returns generic data如何创建返回通用数据的 IReadOnlyCollection<T> 方法
【发布时间】:2021-08-18 17:01:20
【问题描述】:
public static IReadOnlyCollection<int> FillData(this string[] ids,  IReadonlyCollection<int> list)
{ 
    var dataList = list?.ToList() ?? new List<int>();

    foreach (var id in ids)
    {
        dataList.Add(int.Parse(id));
    }

    return datalist.AsReadOnly();
}

如何创建通用方法以接收 IReadOnlyCollection 参数的 int 和 long 并根据请求的类型返回值?

【问题讨论】:

标签: c# generics


【解决方案1】:

类似的东西应该可以工作

    public static IReadOnlyCollection<T> FillData<T>(this string[] ids, IReadOnlyCollection<T> list)
    {
        var dataList = list?.ToList() ?? new List<T>();

        foreach (var id in ids)
        {
            dataList.Add((T)Convert.ChangeType(id, typeof(T)));
        }

        return dataList.AsReadOnly();
    }

PS:但请记住,也许您必须考虑文化。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-06-10
    • 1970-01-01
    • 2016-03-25
    • 2017-01-03
    • 2022-07-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多