2

我有一个像这样定义的通用接口 -

public interface IGenericRepository<TEntity, TDbContextType>
    where TEntity : class
    where TDbContextType : IDbContextType 

该接口由这样的类实现 -

 public class GenericRepository<TEntity,TDbContextType> 
    : IGenericRepository<TEntity, TDbContextType> 
    where TEntity : class 
    where TDbContextType: IDbContextType

我尝试了以下方法来注册这个接口和城堡的实现 -

   _container.Register(Component.For(typeof (IGenericRepository<>))
       .ImplementedBy(typeof (GenericRepository<>))
       .LifestylePerWcfOperation());

但它在编译时失败说“参数数量不正确”。

4

1 回答 1

3

它无法编译,因为您使用一个参数指定了泛型类型,但是您定义了具有两个参数的类型。

所以你应该使用IGenericRepository<,>andGenericRepository<,>而不是IGenericRepository<>and GenericRepository<>

于 2013-08-15T12:10:03.430 回答