2015-11-19 9 views
19

Nelle vecchie versioni di VS, i locali/orologio/Auto/etc finestre rifletterebbero l'albero di ereditarietà di quello che stavano guardando:È possibile configurare i locals/watch/auto window di Visual Studio 2015 in modo da riflettere l'ereditarietà delle versioni precedenti?

Old and good behavior

Ciò ha avuto il beneficio che si sarebbe solo vedere in anticipo la variabili localmente aggiunte a qualunque cosa avessi a che fare, che è ciò che mi interessa quasi sempre.

Ora, si appiattisce e mette tutto in una lunga lista:

New way

che, se avete a che fare con qualsiasi cosa, come Windows Form o sono sottoclasse qualsiasi cosa con un albero di ereditarietà profonda, che i mezzi devi costantemente guadare una tonnellata di spazzatura che non sarà mai importante, ogni volta che devi guardare qualcosa.

In sostanza, sembra che per VS2015 abbiano fatto questo: Flatten inherited members in Visual Studio's Watch window? e ne ha fatto l'unica opzione, e voglio fare il contrario. Certo, di tanto in tanto è bello immergersi rapidamente in profondità nell'albero dell'eredità, ma voglio solo immergermi superficialmente di circa 1000 volte più spesso.

Non ho visto nulla che controlli questo comportamento nelle impostazioni di debug generale, esiste un altro modo per cambiare il comportamento?

+0

È necessario richiedere questa opzione come funzione. VS ha un sito User Voice. La maggior parte delle volte la visualizzazione dell'ereditarietà annidata era solo una seccatura. Posso vedere il caso per i framework UI, però. – usr

risposta

13

Fortunatamente ce n'è uno.

namespace Test 
{ 
    public class A 
    { 
     public int Foo { get; set; } 
    } 

    public class B : A 
    { 
     public int Bar { get; set; } 
    } 

    class Program 
    { 
     static void Main(string[] args) 
     { 
      var a = new B(); 
     } 
    } 
} 

enter image description here

enter image description here

enter image description here

Documentation (non molto utile):

Utilizzare l'eredità C# e VB analizzatori di espressioni

Il debugger utilizzerà gli analizzatori di espressioni Visual Studio 2013 C#/VB invece degli analizzatori di espressioni basati su Visual Studio 2015 Roslyn.

Problemi correlati