Hot Reload konfigurálása (C#, VB, C++)

A Hot Reload (korábbi nevén Szerkesztés és folytatás) a Visual Studio Tools>Options menüben tiltható le vagy engedélyezhető a tervezéskor. Hot Reload csak hibakeresési buildekben működik. További információ: Hot Reload.

Natív C++ esetén Hot Reload a /INCREMENTAL lehetőséget kell használnia. A C++ funkciókövetelményeiről további információt a és Szerkesztés és folytatás (C++)című blogbejegyzésben talál.

Jegyzet

Ha az IntelliTrace engedélyezve van, és intelliTrace-eseményeket és hívási információkat is gyűjt, a Hot Reload le van tiltva. További információ: IntelliTrace.

Hot Reload engedélyezése és konfigurálása

A Hot Reload konfigurálásához válassza a Settings lehetőséget a Hot Reload legördülő gombra.

A Hot Reload konfigurálásának képernyőképe.

Vagy nyissa meg a Tools>Options panelt, és módosítsa a beállításokat a All Beállítások>Debugging>.NET/C++ Hot Reload szakasz. A következő lehetőségek érhetők el:

  • Enable Hot Reload: A Hot Reload funkció használata .NET és C++ kóddal, ha az alkalmazás a csatolt hibakeresővel fut (F5).

  • A folytatás (csak natív) módosításainak automatikus alkalmazása: Visual Studio automatikusan lefordítja és alkalmazza a folyamat megszakítási állapotból való folytatásakor végrehajtott esetleges kódmódosításokat. Ha nincs bejelölve, a Hibakeresés menü Kódmódosítások alkalmazása elemével alkalmazhatja a módosításokat.

  • Figyelmeztetés elavult kódra (csak natív): Figyelmeztetések kérése az elavult kódról.

  • A hibakeresés mellőzése esetén : Engedélyezi Hot Reload, ha az alkalmazás a hibakereső csatolása nélkül fut (Ctrl + F5).

  • Alkalmazás fájlmentésre: Módosítások alkalmazása a fájl mentésekor.

  • Logging részletesség: Állítsa be a naplózás szintjét, amikor a Hot Reload engedélyezve van: Minimális, Részletes vagy Diagnosztikai.

A .NET C++ Hot Reload beállításainak képernyőképe a Visual Studio programban.

Vagy nyissa meg a Tools>Options párbeszédpanelt, és módosítsa a a Debugging>.NET/C++ Hot Reload szakaszban. A következő lehetőségek érhetők el:

  • Enable Hot Reload: Engedélyezi a Hot Reload funkciót, amikor a hibakereső csatlakoztatva van (F5) indításkor.

  • A Hot Reload engedélyezése a hibakeresés nélküli indításkor: Engedélyezi a Hot Reload funkciót a hibakereső csatlakoztatása nélkül (Ctrl+F5).

  • Alkalmazza a Hot Reload funkciót a fájl mentésekor: Kódmódosításokat alkalmaz, amikor menti a fájlt.

  • Logging Verbosity: Szűri a Hot Reload Kimeneti ablakban megjelenő információk mennyiségét.

Beállítások képernyőképe a .NET Hot Reloadhoz.

A C++-hoz további beállításokat is megadhat az Eszközök>beállításai>hibakeresése>általános megnyitásával. Győződjön meg arról, hogy Enable Hot Reload van kiválasztva, és adja meg a többi beállítást:

  • Folytatáskor módosítások alkalmazása (csak natív): A Visual Studio automatikusan lefordítja és alkalmazza a folyamat megszakított állapotban történő folytatásakor a hátralévő kódmódosításokat. Ha nincs bejelölve, a Hibakeresés menü Kódmódosítások alkalmazása elemével alkalmazhatja a módosításokat.

  • Figyelmeztetés elavult kódra (csak natív): Figyelmeztetések kérése az elavult kódról.

A .NET Hot Reload esetében a .NET 6+ projekt launchSettings.json fájljának módosításával és hotReloadEnabledfalse beállításával szabályozhatja, hogy a Hot Reload elérhető-e a projekt szintjén.

Példa:

{
  "profiles": {
    "Console": {
      "commandName": "Project",
      "hotReloadEnabled": false
    }
  }
}

Automatikus újraindítás konfigurálása

Hot Reload automatikusan újraindíthatja az alkalmazás folyamatát, ha nem támogatott módosítás (más néven durva szerkesztés) történik ahelyett, hogy a teljes hibakeresési munkamenetet befejezné. Ennek engedélyezéséhez szerkessze a projektfájlt a következő tulajdonságdeklaráció hozzáadásához.

<PropertyGroup>
  <HotReloadAutoRestart>true</HotReloadAutoRestart>
</PropertyGroup>

Ezt a tulajdonságot a Directory.Build.props fájlban is beállíthatja. Az automatikus újraindítás olyan projekttípusok esetében működik, ahol a folyamat gyors újraindítása megvalósítható (például néhány Aspire- vagy webes projekt), így minimális megszakítással folytathatja a hibakeresést.

Ez egy folyamatalapú újraindítás. Ha például több projektet is hibakereséssel keres, a rendszer csak a módosított projekteket és a függő projekteket újjáépíti és újraindítja.

Hot Reload konfigurálása a Razorhoz

Ha a Razor-fordítót a Roslyn folyamatba illeszti be, a Hot Reload során gyorsabb és hatékonyabb lesz a .razor fájl szerkesztése. A cohosting emellett javítja az általános megbízhatóságot Hot Reload használatakor.

A társtárhelyezés engedélyezéséhez válassza az Eszközök>beállításai lehetőséget, majd keressen rá cohost. Jelölje be a Roslyn Cohost-kiszolgáló használata Razorhoz (újraindítás szükséges) beállítást, vagy törölje a jelölését. Ha engedélyezi ezt a beállítást, indítsa újra Visual Studio. A társtárhelyezés alapértelmezés szerint engedélyezve van.

Hibaelhárítási információkért lásd: Futó kód írása és hibakeresése Hot Reload segítségével a Visual Studio-ban.

Kódmódosítások leállítása

Bár Hot Reload a kódmódosítások alkalmazása folyamatban van, leállíthatja a műveletet.

Figyelem

A felügyelt kód kódmódosításának leállítása váratlan eredményeket eredményezhet. A módosítások alkalmazása a felügyelt kódra általában gyors folyamat, ezért ritkán kell leállítani a kódmódosításokat a felügyelt kódban.

Kódmódosítások alkalmazásának leállítása:

  • Válassza A kódmódosítások alkalmazásának leállítása lehetőséget a Hibakeresés menüből.

    Ez a menüelem csak kódmódosítások alkalmazásakor látható.

    Ha ezt a lehetőséget választja, a kódmódosítások egyike sem lesz véglegesített.