Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

VB -> C#: supporting variable for WithEvents gets non-existent type in some cases

Aperta
#1,055 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
45/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
csharp
Ambito
tooling

Direzione di ricerca

Usa l’input VB.Net fornito come riproduzione e confronta l’output C# errato con quello previsto, concentrandoti sulla variabile di supporto generata e sul tipo della proprietà per WithEvents. Traccia il modo in cui il convertitore risolve la classe e lo spazio dei nomi quando i loro nomi differiscono solo per maiuscole e minuscole. Il lavoro è completato quando l’esempio produce il tipo previsto NS1.Ns1 senza compromettere gli accessor della proprietà generati.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

compilation error VB -> C#

This happens when the names of a class and its namespace only differ in case (NS1 vs Ns1).

VB.Net input code
Imports NS1

Public Class TestNameSpaceSameNameAsClass
    Public WithEvents ins As NS1.Ns1
End Class

Namespace Global.NS1
    Public Class Ns1
    End Class
End Namespace
Erroneous output
using System.Runtime.CompilerServices;

namespace NS1
{
    public class NS1
    {
    }
}

public class TestNameSpaceSameNameAsClass
{
    private NS1 _ins; //error: this class doesn't exist

    public virtual NS1 ins
    {
        [MethodImpl(MethodImplOptions.Synchronized)]
        get
        {
            return _ins;
        }

        [MethodImpl(MethodImplOptions.Synchronized)]
        set
        {
            _ins = value;
        }
    }
}
Expected output
using System.Runtime.CompilerServices;

namespace NS1
{
    public class NS1
    {
    }
}

public class TestNameSpaceSameNameAsClass
{
    private NS1.Ns1 _ins;

    public virtual NS1.Ns1 ins
    {
        [MethodImpl(MethodImplOptions.Synchronized)]
        get
        {
            return _ins;
        }

        [MethodImpl(MethodImplOptions.Synchronized)]
        set
        {
            _ins = value;
        }
    }
}

Details
  • Product in use: VS extension
  • Version in use: ae25cdc920df68755fb233934028091c97b42853
  • Did you see it working in a previous version, which? No
  • Any other relevant information to the issue, or your interest in contributing a fix.
Lingua principale
C#
Stelle
913
Fork
244
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di icsharpcode/CodeConverter

Tutte le issue di icsharpcode/CodeConverter

Issue simili

Altre issue su C#

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.