[Castle]Castle也范型

配置文件如下:
<!-- Core data access services -->
        
<component 
            
id="commondao" 
            service
="RXOA.DataAccess.ICommonDao`1,RXOA.DataAccess"
            type
="RXOA.DataAccess.CommonDao`1,RXOA.DataAccess">
        
</component>
上面这种是一种通用的配置方法,也就是说这种配置可以使用任何类型如:
private ICommonDao<Announce> _commonDao;
        
private ICommonDao<AnnounceType> _typecommonDao;
        
private ICommonDao<ObjectLooker> _objDao;


        
public AnnounceService(ICommonDao<Announce> commonDao, ICommonDao<AnnounceType> typecommonDao,
                               ICommonDao
<ObjectLooker> objDao)
        
{
            
this._commonDao = commonDao;
            
this._typecommonDao = typecommonDao;
            
this._objDao = objDao;
        }
这里有三种不同的类型,只需上面一个配置即可。
你也可以配置制定类型的范型服务
<component 
    
id='int.repos.generic' 
    
service='Namespace.IRepository`1[[System.Int32]], AssemblyName' 
    type
='Namespace.Repository`1[[System.Int32]], AssemblyName' />

更多参考Castle Documention
http://www.castleproject.org/container/documentation/v1rc3/usersguide/genericssupport.html
posted @ 2006-12-11 16:09 福娃 阅读(734) 评论(8)  编辑 收藏 所属分类: Castle

  回复  引用  查看    
#1楼  2006-12-11 17:44 | Daniel Phang      
厉害,以后配置文件写一个就OK了
如果XML也支持泛型那就好了,嘿嘿
  回复  引用  查看    
#2楼  2006-12-31 15:35 | Daniel Phang      
仔细说说你这个配置
项目中接口和类应该怎么定义了?