2015-10-13 53 views
0

我有這樣的代碼有服務1和服務2之間的循環引用,我使用VS2015符號映射找到循環引用,但他們似乎並沒有被顯示出來符號映射Visual Studio中沒有表現出循環引用

我選擇佈局>分析儀>循環引用分析,並根據它應該在紅色方框突出顯示右側的傳說......

public interface IService1 
     { 
      void Dosometing1(); 
      void Donothing(); 
     } 

     public class Service1 : IService1 
     { 
      private readonly IService2 _service2; 

      public Service1(IService2 service2) 
      { 
       _service2 = service2; 
      } 

      public void Dosometing1(){} 
      public void Donothing() 
      { 
      _service2.Dosometing2(); 
      } 
     } 

     public interface IService2 
     { 
      void Dosometing2(); 
     } 

     public class Service2 : IService2 
     { 
      readonly IService1 _service1; 

      public Service2(IService1 service1) 
      { 
       _service1 = service1; 
      } 

      public void Dosometing2() 
      { 
       _service1.Donothing(); 

      } 
     } 

circ ref from code map

回答

0

也有,沒有循環引用隨時隨地圖。所有鏈接從左到右流動,沒有從右到左流動。循環引用分析器突出顯示可見圖形中的循環。

這裏是在方法層面的簡單循環引用的一個例子:

class TestMe 
    { 
     public void A() 
     { 
      B(); 
     } 

     public void B() 
     { 
      A(); 
     } 
    } 

和代碼映射:

enter image description here

請讓我知道如果你期待的東西。如果你能描述你試圖抓住什麼樣的建築違規,它也會有所幫助:)