Dela via


Extrahera och infoga refaktoriseringar

Visual Studio innehåller flera refaktoriseringar för att extrahera kod till nya konstruktioner eller infoga kod för att förenkla din kodbas. Du kan komma åt dessa refaktoriseringar via snabbåtgärder och refaktoriseringar (Ctrl+.).

Metodutdragning

Applies to: C#, Visual Basic

Den här refaktorn omvandlar ett fragment av kod till en egen metod, vilket minskar dupliceringen när samma kod måste anropas från flera platser.

  1. Markera koden som ska extraheras:

    • C#:

      Skärmbild av C#-kod för klassen Program. I huvudfunktionen i den klassen markeras en kodrad.

    • Visual Basic:

      Skärmbild av Visual Basic kod för main sub. I den suben markeras en kodrad.

  2. Gör sedan något av följande:

    • tangentbord
      • Tryck på Ctrl+R och sedan på Ctrl+M. (Kortkommandot kan skilja sig beroende på vilken profil du har valt.)
      • Tryck på Ctrl+. Om du vill utlösa menyn Snabbåtgärder och Refaktoriseringar väljer du Extrahera metod i popup-fönstret Förhandsgranskning.
    • Mus
      • Välj Redigera > refaktorextraheringsmetod>.
      • Högerklicka på koden och välj Extrahera metod > för refaktorextrakt>.
      • Högerklicka på koden, välj menyn Snabbåtgärder och Omstrukturera och välj Extrahera metod i popup-fönstret Förhandsgranskning.

    Metoden skapas omedelbart. Nu kan du byta namn på metoden genom att skriva det nya namnet.

    Tips/Råd

    Du kan också uppdatera kommentarer och andra strängar för att använda det här nya namnet, samt förhandsgranska ändringar innan du sparar, med kryssrutorna i rutan Byt namn som visas längst upp till höger i din IDE.

    • C#:

      Skärmbild av C#-kod för klassen Program. Ett metodnamn är markerat och popup-fönstret Byt namn är öppet.

    • Visual Basic:

      Skärmbild av Visual Basic kod för main sub. Ett metodnamn är markerat och popup-fönstret Byt namn är open.

  3. När du är nöjd med ändringen väljer du knappen Tillämpa eller trycker på Retur så kommer ändringarna att genomföras.

Extrahera lokal funktion

Gäller för: C#

Den här refaktorn omvandlar ett kodfragment från en befintlig metod till en lokal funktion, användbart när den extraherade koden bara behöver anropas inom samma metod.

  1. Markera den kod som ska extraheras.

  2. Tryck på Ctrl+för att utlösa menyn Snabbåtgärder och Omstrukturera.

  3. Välj Extrahera lokal funktion.

    Skärmbild av Visual Studio kodfönstret med en rad markerad. Menyn Snabbåtgärder och refaktoriseringar är öppen och funktionen Extrahera lokal är vald.

Extrahera basklass

Applies to: C#, Visual Basic

Den här refaktoreringen extraherar medlemmar från en vald klass till en ny basklass, vilket är användbart när du vill dela medlemmar mellan klasser via arv.

  1. Placera din caret på antingen klassnamnet eller en markerad medlem.

  2. Tryck på Ctrl+för att utlösa menyn Snabbåtgärder och Omstrukturera.

  3. Välj Flytta upp medlem(mar) till ny basklass.

    Skärmbild av dialogrutan Extrahera basklass.

Den nya dialogrutan Extrahera basklass öppnas där du kan ange namnet på basklassen och platsen där den ska placeras. Du kan välja de medlemmar som du vill överföra till den nya basklassen och välja att göra medlemmarna abstrakta genom att markera kryssrutan i kolumnen Gör abstrakt.

Extrahera gränssnitt

Applies to: C#, Visual Basic

Den här refaktoreringen skapar ett gränssnitt med befintliga medlemmar från en klass, en struct eller ett gränssnitt, vilket gör att andra typer kan dela en gemensam signatur.

  1. Placera markören i klassnamnet.

    • C#:

      Skärmbild av markerad kod för Extrahera gränssnitt – C#.

    • Visual Basic:

      Skärmbild av markerad kod – Visual Basic.

  2. Gör sedan någon av följande åtgärder:

    • tangentbord
      • Tryck på Ctrl+R och sedan på Ctrl+I. (Kortkommandot kan skilja sig beroende på vilken profil du har valt.)
      • Tryck på Ctrl+. Om du vill utlösa menyn Snabbåtgärder och Refaktoriseringar väljer du Extrahera gränssnitt i popup-fönstret Förhandsgranskning.
    • Mus
      • Välj Redigera > gränssnitt för refaktorextrahera>.
      • Högerklicka på namnet på klassen, välj snabbåtgärder och omstrukturerar menyn och välj Extrahera gränssnitt från popup-fönstret Förhandsgranskning.
  3. I dialogrutan Extrahera gränssnitt som visas anger du den information som efterfrågas:

    Skärmbild av Extrahera gränssnitt.

    Fält Beskrivning
    Nytt gränssnittsnamn Namnet på det gränssnitt som ska skapas. Namnet kommer som standard att vara IClassName, där ClassName är namnet på den klass som du valde ovan.
    Nytt filnamn Namnet på den genererade filen som ska innehålla gränssnittet. Precis som med gränssnittsnamnet kommer det här namnet som standard att vara IClassName, där ClassName är namnet på den klass som du valde ovan. Du kan också välja alternativet Lägg till i den aktuella filen.
    Välj offentliga medlemmar för att skapa gränssnitt De objekt som ska extraheras till gränssnittet. Du kan välja så många du vill.
  4. Välj OK.

    Gränssnittet skapas i filen med det angivna namnet. Dessutom implementerar den klass som du valde det gränssnittet.

    • C#:

      Skärmbild av resulterande klass – C#.

      Skärmbild av resulterande gränssnitt – C#.

    • Visual Basic:

      Skärmbild av resulterande klass – Visual Basic.

      Skärmbild av resulterande gränssnitt – Visual Basic.

Inbyggd metod

Applies to: C#, Visual Basic

Den här refaktoreringen ersätter användningen av en statisk metod, instans eller tilläggsmetod i en enda instruktionstext med dess implementering, med ett alternativ för att ta bort den ursprungliga metoddeklarationen.

  1. Placera din caret på användningen av metoden.

  2. Tryck på Ctrl+för att utlösa menyn Snabbåtgärder och Omstrukturera.

  3. Välj något av följande alternativ:

    Välj Inline <QualifiedMethodName> för att ta bort inline-metoddeklarationen:

    Skärmbild av snabbåtgärder och refaktoriseringar i Visual Studio med Konvertera infogad

    Välj Infoga och behåll <QualifiedMethodName> för att bevara den ursprungliga metoddeklarationen:

    Skärmbild av snabbåtgärder och omstrukturerar-menyn i Visual Studio med Konvertera

Infogad tillfällig variabel

Applies to: C#, Visual Basic

Den här refaktoreringen tar bort en tillfällig variabel och ersätter den med dess värde i stället, vilket förenklar koden när den tillfälliga variabeln gör koden svårare att förstå.

  1. Markera eller placera textmarkören i den temporära variabeln som ska infogas:

    • C#:

      Skärmbild av markerad kod för infogad tillfällig variabel – C#.

    • Visual Basic:

      Skärmbild av markerad kod Visual Basic.

  2. Gör sedan något av följande:

    • tangentbord
      • Tryck på Ctrl+för att utlösa menyn Snabbåtgärder och Omstrukturera.
    • Mus
      • Högerklicka på koden och välj menyn Snabbåtgärder och Omstrukturera.
  3. Välj Infogad tillfällig variabel i popup-fönstret Förhandsversion.

    Variabeln tas bort och dess användning ersätts med variabelns värde.

    • C#:

      Skärmbild av infogat resultat – C#.

    • Visual Basic:

      Skärmbild av infogat resultat – Visual Basic.