1
Il y a un moyen d'ajouter un membre à une classe avec roslyn? Je veux ajouter:Ajout d'une nouvelle déclaration de champ à la classe avec Roslyn
public int number {get;set;}
MISE À JOUR J'ai utilisé ce code:
PropertyDeclarationSyntax o =
SyntaxFactory.PropertyDeclaration(SyntaxFactory.ParseTypeName("public
System.Windows.Forms.Timer"), "Ticker { get; set; }");
var newRoot = root.ReplaceNode(oldMethod, oldMethod.AddMembers(o));
newRoot = Formatter.Format(newRoot, new AdhocWorkspace());
File.WriteAllText(file, newRoot.ToFullString());
Mais le résultat est ceci:
public class ClassChild
{
public int n;
private int n2;
public void method1()
{
string c = "";
Console.WriteLine();
}
public System.Windows.Forms.TimerTicker { get; set; }
}
}
Je voudrais inline public System.Windows.Forms.TimerTicker {get; ensemble; } avec n et n2. Comment puis-je faire ceci ?
pouvez-vous prolonger ce que vous voulez réaliser? Créer un analyseur \ fix pour ajouter des valeurs, ou un utilitaire autonome (pour le processus de construction, par exemple)? – Oxoron
Je veux corriger une classe en ajoutant un nouveau champ. Dans le passé, je réussis à ajouter une nouvelle instruction à une méthode: /MethodDeclarationSyntax updateMethod = oldMethod.AddBodyStatements (ex); // var updatedRoot = root.ReplaceNode (oldMethod, updateMethod) .NormalizeWhitespace(); Je veux faire la même chose – blinkettaro
Pouvez-vous m'aider? – blinkettaro