VB -> C#: Base constructor calls with noncanonical casing produce invalid C#
Maintainer antworten meist innerhalb von 3 Tagen
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Anfängerfreundlichkeit
- 72/100
Rechercherichtung
Beginne damit, die Erkennung von VB.NET-Basiskonstruktorinitialisierern im Konverter zu finden; laut Issue beruht sie derzeit auf einem Vergleich von Text unter Beachtung der Groß- und Kleinschreibung. Füge Regressionstests für MyBase.new(value) mit gemischter Groß- und Kleinschreibung sowie für die parameterlose Form MyBase.new hinzu. Als erledigt gilt die Aufgabe, wenn beide einen C#-Konstruktorinitialisierer statt eines base.ctor-Aufrufs erzeugen.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
VB.Net input code
Public Class DataSet1
Inherits Global.System.Data.DataSet
Public Sub New(value As String)
MyBase.new(value)
End Sub
End Class
Erroneous output
The base constructor call is emitted as a method call inside the constructor body:
public partial class DataSet1 : System.Data.DataSet
{
public DataSet1(string value)
{
base.ctor(value);
}
}
This produces compiler error CS0117 because DataSet does not contain a definition for ctor.
Expected output
public partial class DataSet1 : System.Data.DataSet
{
public DataSet1(string value) : base(value)
{
}
}
Details
- Product: Visual Studio extension, built locally from master.
- Version: 10.0.1 (local development build).
- Previous working version: No.
VB.NET is case-insensitive, so MyBase.New(value), MyBase.new(value), and MyBase.nEw(value) are equivalent. However, the converter uses a case-sensitive text comparison when recognizing the constructor initializer.
The same issue occurs with parameterless calls written without parentheses, such as MyBase.new.
A workaround is to use the canonical casing, MyBase.New.
- Vorherrschende Sprache
- C#
- Sterne
- 917
- Forks
- 243
- Ø Merge
- 2 T. 15 Std.
- Gemergte PRs (30 T.)
- 9
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
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 icsharpcode/CodeConverter
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
icsharpcode/CodeConverter#1271 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 3 Tagen
-
VB -> C#: Generic extension method inference widens element types when using a base-type comparerOffenVB -> C#
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 55/100
icsharpcode/CodeConverter#1302 ·
Maintainer antworten meist innerhalb von 3 Tagen
-
VB -> C#
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 68/100
icsharpcode/CodeConverter#1300 ·
Maintainer antworten meist innerhalb von 3 Tagen
-
VB -> C#
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 62/100
icsharpcode/CodeConverter#1299 ·
Maintainer antworten meist innerhalb von 3 Tagen
-
VB -> C#
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 62/100
icsharpcode/CodeConverter#1298 ·
Maintainer antworten meist innerhalb von 3 Tagen
Alle Issues in icsharpcode/CodeConverter
Ähnliche Issues
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 80/100
Unity-Technologies/unity-agent-plugin#118 ·
Maintainer antworten meist innerhalb von 1 Tag
-
The Recommended preset turns on Import Uno DSP, which only works with the Material themeEvtl. vergeben @agneszitte hat das heute übernommen. Offen
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 92/100
unoplatform/uno.templates#2388 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 77/100
eyalgolan/statecraft-israel#2732 ·
Maintainer antworten meist innerhalb von 1 Tag
-
要トリアージ
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 64/100
Maintainer antworten meist innerhalb von 1 Tag
-
kind/chore status/draft
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
Altinn/altinn-events#1158 ·
Maintainer antworten meist innerhalb von 1 Tag