esempio - metodi c#



Come usare C#per trovare gli usi di una classe o di un metodo? (2)

Ad essere onesti, non l'ho mai fatto prima, perché non avevo mai avuto bisogno di cose del genere.

Per accedere al tipo di informazioni è necessario avere accesso a Token Tree del compilatore, costruito per semantic analysis .

Questo tipo di informazioni, di sicuro è possibile avere accesso da Roslyn (API per compilatore C #). Dove puoi inserire nella funzione API un testo C# , esegui un compilatore su di esso e recupera l' Tokens tree .

Panoramica del progetto Roslyn

Spero che questo ti aiuti.

In Visual Studio, posso fare clic con il pulsante destro del mouse su una classe o un metodo e selezionare "Trova usi". Questo mi fornisce un elenco di luoghi nella mia soluzione in cui viene utilizzato quel pezzo di codice. Come posso fare lo stesso dal mio codice?


Answer #1

Dovresti analizzare il tuo codice per farlo. Non penso che potresti farlo con la riflessione. MS ha lavorato a un progetto chiamato Roslyn. Questa è una specie di API per il compilatore .NET. Dovrebbe fornirti ciò di cui hai bisogno. Dai un'occhiata a questo post per i dettagli del progetto Roslyn.

Citazione dal post:

Questo apre nuove opportunità per gli estensori VS di scrivere potenti refactoring e strumenti di analisi del linguaggio, oltre a consentire a chiunque di incorporare i nostri parser, motori semantici, generatori di codice e scripting nelle proprie applicazioni.

Questo post dimostra di lavorare con i simboli.
Questo post risponde alla domanda di ottenere tutti i riferimenti.





visual-studio