gpt4 book ai didi

c# - 匿名类型和泛型

转载 作者:太空狗 更新时间:2023-10-29 22:24:37 34 4
gpt4 key购买 nike

我找不到将匿名类型作为类型参数传递给泛型类的方法。

//这是我要实例化的类

public class ExtArrayStore<T> : IViewComponent 
{
public IQueryable<T> Data { get; set; }

...//创建者类

public static class ArrayStoreGenerator
{
public static ExtArrayStore<T> CreateInstance<T>(IQueryable<T> query)
{
return new ExtArrayStore<T>();
}
}

//尝试使用这个

IQueryable usersQuery= ((from k in bo.usersselect new { userid = k.userid, k.username}).AsQueryable());
var x = ArrayStoreGenerator.CreateInstance(usersQuery);

我得到了;

无法从用法中推断出方法ArrayStoreGenerator.CreateInstance(System.Linq.IQueryable)' 的类型参数。尝试明确指定类型参数

有办法实现吗? (我正在考虑接口(interface)并返回一个接口(interface),但不确定它是否可行)任何人都可以帮助将匿名类型传递给泛型。

最佳答案

usersQuery被输入为非通用 IQueryable因为您在变量声明中明确指定了这一点。

相反,执行 var usersQuery = ... .这会将变量键入为 IQueryable<TAnon> ,然后匹配 ArrayStoreGenerator.CreateInstance 的签名.

关于c# - 匿名类型和泛型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4016435/

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