没有为此对象定义的无参数构造函数。 Nopcommerce 2.40

时间:2013-12-20 09:52:27

标签: asp.net-mvc asp.net-mvc-3 nopcommerce

我正在尝试访问我的OrderService中的productservice,如下所示,但它会抛出错误

  

没有为此对象定义无参数构造函数。描述:一个   在执行当前Web期间发生了未处理的异常   请求。请查看堆栈跟踪以获取有关的更多信息   错误以及它在代码中的起源。

     

异常详细信息:System.MissingMethodException:无参数   为此对象定义的构造函数。

 //Many repositories are here just like 3 belows
 private readonly IRepository<Store> _storeRepository;  

 private readonly IRepository<ProductPicture> _productPictureRepository; 

 private readonly IRepository<Picture> _picture;  

 private readonly IProductService _productService; 

 //private readonly IProductService _productService = EngineContext.Current.Resolve<IProductService>();

   //tried above line but with no success
//Constructor for OrderService goes below
  public OrderService(IRepository<Store> storeRepository,
       IProductService productService
    )
    {
      _storeRepository = storeRepository;
        _productService= productService;
    }

如果我删除了productService的引用,则应用程序运行良好。我在网上和nopcommerce论坛上搜索了很多,但没有找到任何解决方案。

任何帮助?

1 个答案:

答案 0 :(得分:2)

问题是IProductService的实现没有提供无参数的构造函数,或public ProductServiceImpl() { },因此依赖注入框架无法解析它。

注册IProductService时,请确保指定要使用的构造函数或为注册的实现创建一个空构造函数。