首页 新闻 搜索 专区 学院

看Castle源码有段代码不懂...

0
悬赏园豆:20 [已解决问题] 解决于 2008-04-02 12:48
<P>public interface IServiceProviderEx : IServiceProvider<BR>{<BR>&nbsp;&nbsp;&nbsp; T GetService&lt;T&gt;() where T : class;<BR>}</P> <P>T GetService&lt;T&gt;() where T : class;</P> <P>这句是什么意思啊?</P>
Soarx的主页 Soarx | 初学一级 | 园豆:160
提问于:2008-04-01 16:27
< >
分享
最佳答案
0
这是个泛型方法. 这里,T可以作为任何引用类型(class)使用. 比如你可以这么使用实现了这个接口的类: IServiceProviderEx provider = new ....; ServiceType service = provider.GetSerivce<ServiceType>();
deerchao | 大侠五级 |园豆:8167 | 2008-04-01 16:30
其他回答(6)
0
where的作用是对传入的类型T作出约束,这里where T:class 表示T类型必须是一个class(类),所以在调用GetService<T>的时候,T只能是class,而不能是其它,如struct(结构)。
Klesh Wong | 园豆:780 (小虾三级) | 2008-04-01 16:45
0
where是对T所作的约束,class表明T必须是引用类型
Anders Cui | 园豆:1570 (小虾三级) | 2008-04-01 21:05
0
Castle正在研究.
侯垒 | 园豆:3435 (老鸟四级) | 2008-04-01 22:21
0
问题楼上各位都解答的很好了,但问一下,想用castle,但不知从何下手啊?
张荣华 | 园豆:2020 (老鸟四级) | 2008-04-01 23:02
0
TerreyLee有一个研究Castle的系列,可以去看看:-)
Anytao | 园豆:215 (菜鸟二级) | 2008-04-02 10:01
0
先尝试做一些简单的应用 比如用ActiveRecord来做ORM,体会体会~再就是它的IOC容器,这个还是非常不错的~轻便易用
wsky | 园豆:558 (小虾三级) | 2008-04-02 11:53
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册