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

Visual Studio 2026 XmlDocument not found

Aperta
#38 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 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

Inizia con User.csx e i riferimenti #r mostrati nel report, confrontando il modo in cui CodegenCS.SourceGenerator risolve System.Xml in VS 2022 e VS 2026. Verifica se il riferimento all'assembly segnalato deve essere modificato; il lavoro è completato quando il template viene compilato con XmlDocument nella versione più recente di Visual Studio.

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

Descrizione

I am using the NuGet Package CodegenCS.SourceGenerator 3.5.2, this is working well with VS 2022 and XmlDocument in the .csx files:

#r "System.Xml.dll"
#r "System.Xml.ReaderWriter.dll"
// Requires CodegenCS.SourceGenerator NuGet package
using CodegenCS.Runtime;
using Newtonsoft.Json;
using System.IO;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using System.Xml;
using System.Reflection;

public class UserTemplate
{
...
    async Task<bool> GenerateConfig(ICodegenTextWriter writer, ICodegenTextWriter logWriter)
    {
        string prefix = string.Empty;
        string key = string.Empty;

        try
        {
            string fileName = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.UserProfile), ".apk", "ionos_dns.xml");
            if (File.Exists(fileName))
            {
                XmlDocument doc = new XmlDocument();
                doc.Load(fileName);
                XmlNode nodeDns = doc.SelectSingleNode("/dns_info/api");
                if (nodeDns != null)
                {
                    XmlAttribute attribPrefix = nodeDns.Attributes["prefix"];
                    if (attribPrefix != null)
                    {
                        prefix = attribPrefix.Value;
                        logWriter.WriteLine($"Api: Prefix={prefix}");
                    }
                    XmlAttribute attribKey = nodeDns.Attributes["key"];
                    if (attribKey != null)
                    {
                        key = attribKey.Value;
                        logWriter.WriteLine($"Api: Key={key}");
                    }
                }
            }
            else
            {
                logWriter.WriteLine($"Configuration file not found: {fileName}");
            }
        }
        catch (Exception ex)
        {
            logWriter.WriteLine($"Exception: {ex.Message}");
            return false;
        }
...
}

When using it with VS2026 I get the error message:
1>CSC : error CODEGENCS002: Failed to build CodegenCS Template 'User.csx' (line 64 column 17): 'Der Typname "XmlDocument" konnte nicht im Namespace "System.Xml" gefunden werden. Dieser Typ wurde an Assembly "System.Xml.ReaderWriter, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" weitergeleitet. Sie sollten einen Verweis auf die Assembly hinzufügen.'
Is this simply not compatible with VS2026 or is a different #r command required?

Lingua principale
C#
Stelle
307
Fork
40
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

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 Drizin/CodegenCS

Tutte le issue di Drizin/CodegenCS

Issue simili

Altre issue su C#

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.