当前位置: 代码迷 >> ASP.NET >> 使用ninject,异常。请大家帮忙看看
  详细解决方案

使用ninject,异常。请大家帮忙看看

热度:6422   发布时间:2013-02-25 00:00:00.0
使用ninject,错误。请大家帮忙看看
C# code
using System;using System.Collections.Generic;using System.Linq;using System.Text;using Ninject;namespace Test{    class Program    {        static void Main(string[] args)        {            IKernel ninjectKernal = new StandardKernel();            ninjectKernal.Bind<ICalculateHelper>().To<CalculateHelper>();            ICalculateHelper ic = ninjectKernal.Get<ICalculateHelper>();            CalculateHelper ch = new CalculateHelper(ic);            Console.WriteLine(ch.Add(1, 2).ToString());            Console.ReadKey();        }    }    public interface ICalculateHelper    {         decimal Add(decimal a, decimal b);         decimal Sub(decimal a, decimal b);    }    public class CalculateHelper:ICalculateHelper    {        private ICalculateHelper ic;        public CalculateHelper(ICalculateHelper icParam)        {            ic = icParam;        }        public decimal Add(decimal a, decimal b)        {            return b + a;        }        public decimal Sub(decimal a, decimal b)        {            return a - b;        }    }}

错误提示为
Error activating ICalculateHelper using binding from ICalculateHelper to CalculateHelper
A cyclical dependency was detected between the constructors of two services.

------解决方案--------------------------------------------------------
循环依赖:
public class CalculateHelper:ICalculateHelper
{
private ICalculateHelper ic;
------解决方案--------------------------------------------------------
C# code
错误激活ICalculateHelper使用绑定从ICalculateHelper至CalculateHelperA循环依赖检测两个服务之间的构造函数。