Hot-reloading issue with specific child class of a generic class
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 35/100
Rechercherichtung
Reproduzieren Sie das Problem im Unity Play Mode mit einer abgeleiteten Klasse wie GameManager, die von MonoBehaviourSingleton erbt, und untersuchen Sie anschließend die generierte zusammengeführte Quelldatei sowie die Ausgabe der Hot-Reload-Kompilierung. Die Fehlerbehebung ist abgeschlossen, wenn das Ändern der Klasse erfolgreich neu geladen wird, ohne den CS0246-Fehler für den selbstreferenziellen Typ.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
When a class inherits from a generic class with itself as a type argument, FSR tries to hot reload but causes error due to the reference to original class name is missing.
For example, the class below will causes exception when modified inside play mode.
public partial class GameManager : MonoBehaviourSingleton<GameManager>
FSR: Error when updating files: 'GameManager.cs', FastScriptReload.Editor.Compilation.HotReloadCompilationException: Compiler failed to produce the assembly. Output: 'C:\Users\Nugget\AppData\Local\Temp\0fe7e28f1b734ebeb756f4db6ff4d726.SourceCodeCombined.cs(42,152): error CS0246: The type or namespace name 'GameManager' could not be found (are you missing a using directive or an assembly reference?)' ---> System.Exception: Compiler failed to produce the assembly. Output: 'C:\Users\Nugget\AppData\Local\Temp\0fe7e28f1b734ebeb756f4db6ff4d726.SourceCodeCombined.cs(42,152): error CS0246: The type or namespace name 'GameManager' could not be found (are you missing a using directive or an assembly reference?)'
Is it a known or unknown limitation, or a bug?
- Vorherrschende Sprache
- C#
- Sterne
- 2.2k
- Forks
- 168
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus handzlikchris/FastScriptReload
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 88/100
handzlikchris/FastScriptReload#202 · 2 Reaktionen ·
-
csc.rsp supportOffen
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 45/100
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 38/100
handzlikchris/FastScriptReload#203 · 4 Kommentare ·
-
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 42/100
handzlikchris/FastScriptReload#197 · 1 Kommentar ·
Alle Issues in handzlikchris/FastScriptReload
Ähnliche Issues
-
:watch: Not Triaged dotnet-target-version
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 85/100
Maintainer antworten meist innerhalb von 1 Tag
-
copilot documentation
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
Maintainer antworten meist innerhalb von 2 Tagen
-
untriaged
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 86/100
dotnet/dotnet-api-docs#13124 ·
Maintainer antworten meist innerhalb von 1 Tag
-
agentic-workflows
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 74/100
Maintainer antworten meist innerhalb von 1 Tag
-
type:bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
BHoM/MidasCivil_Toolkit#441 ·