gpt4 book ai didi

c# - IList.Cast() 返回错误,语法看起来没问题

转载 作者:太空狗 更新时间:2023-10-30 00:01:13 27 4
gpt4 key购买 nike

public static IList<T> LoadObjectListAll<T>()
{
ISession session = CheckForExistingSession();
var cfg = new NHibernate.Cfg.Configuration().Configure();
var returnList = session.CreateCriteria(typeof(T));
var list = returnList.List();
var castList = list.Cast<typeof(T)>();
return castList;
}

因此,我在将“列表”元素转换为通用 IList 时遇到构建错误......任何人都可以在这里看到明显的错误吗?

最佳答案

T 不是类型,也不是 System.TypeT 是类型参数。 typeof(T) 返回T 的类型。 typeof 运算符不作用于一个对象,它返回一个类型的Type 对象。 http://msdn.microsoft.com/en-us/library/58918ffs.aspx

@John 在回答您的直接问题时是正确的。但是那里的 NHibernate 代码有点不对劲。例如,您不应该在获取 ISession 之后配置 ISessionFactory

public static T[] LoadObjectListAll()
{
var session = GetNewSession();
var criteria = session.CreateCriteria(typeof(T));
var results = criteria.List<T>();
return results.ToArray();
}

关于c# - IList.Cast<typeof(T)>() 返回错误,语法看起来没问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43126/

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