title: C# Circular dependencies in Unity with Ctor injection
body: <p>I know that the issue of circular dependencies in the contect of dependency injection with prism/unity was dicussed here before.</p>
  
  <p>But I still don't get it. Suppose the following classes:</p>
  
  <pre><code>class Feeder : IFeeder    { 
    IManager _MM, 
    Feeder(IManager MM)
    {
       this._MM = MM;
    }
    public void Start()
    {
    ...
    }
    public void Stop()
    {
    ...
    }
    private Propagate()
    {
       _MM.ConsumeFeed()
    }
  };
  
  class FeedManager : IManager
  {
     IFeeder _Feeder;
     FeedManager(IFeeder Feeder)
     {
        this._Feeder = Feeder;
     }
     public ConsumeFeed()
     {
     ...
     }
     private Shutdown()
     {
        _Feeder.Stop();
     }
     private StartUp()
     {
        _Feeder.Start();
     }
  };
  </code></pre>
  
  <p>This is clearly a circular dependcy, since Feeder depends on FeedManager and vice verca. I don't see a clear way to resovle this, since it seems a very natural design.</p>
  
  <p>When you follow this <a href="http://misko.hevery.com/2008/08/01/circular-dependency-in-constructors-and-dependency-injection/" rel="nofollow">link</a> there is a hint to extract some methods but I still don't see how I can decouple those objects.
  I read about dependency inversion, observer pattern, shared objects, events and so on.
  To me, this seems all like an overkill to achieve a simple realtionship between the two objects.</p>
  
  <p>Is the only way to resolve this to work with a million events in the application or shared objects?
  Thanks for help, Juergen</p>