T
不是类型也不是System.Type
. T
是一个类型参数. typeof(T)
返回类型T
.该typeof
运营商不采取行动的对象上,它返回Type
一个类型的对象.http://msdn.microsoft.com/en-us/library/58918ffs.aspx
@John回答你的直接问题是正确的.但是NHibernate的代码有点偏差.例如,你不应该ISessionFactory
在获得之后进行配置ISession
.
public static T[] LoadObjectListAll() { var session = GetNewSession(); var criteria = session.CreateCriteria(typeof(T)); var results = criteria.List(); return results.ToArray(); }
jfs.. 5
我认为
var castList = list.Cast();
应该
var castList = list.Cast();
@Jon Limjap我能看到的最明显的错误
IList
是a绝对不同于IList
.AIList
是非通用的(例如ArrayList
).
最初的问题已经在使用了IList
.有人编辑格式时删除了它.可能是Markdown的一个问题.
现在修复了.
T
不是类型也不是System.Type
. T
是一个类型参数. typeof(T)
返回类型T
.该typeof
运营商不采取行动的对象上,它返回Type
一个类型的对象.http://msdn.microsoft.com/en-us/library/58918ffs.aspx
@John回答你的直接问题是正确的.但是NHibernate的代码有点偏差.例如,你不应该ISessionFactory
在获得之后进行配置ISession
.
public static T[] LoadObjectListAll() { var session = GetNewSession(); var criteria = session.CreateCriteria(typeof(T)); var results = criteria.List(); return results.ToArray(); }
我认为
var castList = list.Cast();
应该
var castList = list.Cast();
@Jon Limjap我能看到的最明显的错误
IList
是a绝对不同于IList
.AIList
是非通用的(例如ArrayList
).
最初的问题已经在使用了IList
.有人编辑格式时删除了它.可能是Markdown的一个问题.
现在修复了.