Используя System.Reflection, легко изучить все различные типы сборки, сверлить их члены, свойства и т. Д. Что (если есть) - это сопоставимый API для этого в Roslyn?Как исследовать API как System.Reflection в Roslyn?
1
A
ответ
1
Есть несколько полезных фрагментов Roslyn на FAQ.
На вопрос:
Как получить все символы сборки (или все упомянутые узлы)
Ниже предоставлена. Он просто печатает все пространства имен, типы, поля и методы во всех сборках, на которые ссылается ваша компиляция. Это должно послужить хорошей отправной точкой для вас.
var compilation = ... //Get a compilation
var results = new StringBuilder();
// Traverse the symbol tree to find all namespaces, types, methods and fields.
foreach (NamespaceSymbol ns in compilation.GetReferencedAssemblySymbol(mscorlib).GlobalNamespace.GetNamespaceMembers())
{
results.AppendLine();
results.Append(ns.Kind);
results.Append(": ");
results.Append(ns.Name);
foreach (var type in ns.GetTypeMembers())
{
results.AppendLine();
results.Append(" ");
results.Append(type.TypeKind);
results.Append(": ");
results.Append(type.Name);
foreach (var member in type.GetMembers())
{
results.AppendLine();
results.Append(" ");
if (member.Kind == SymbolKind.Field || member.Kind == SymbolKind.Method)
{
results.Append(member.Kind);
results.Append(": ");
results.Append(member.Name);
}
}
}
}
Смежные вопросы
- 1. System.Reflection
- 2. System.Reflection
- 3. Как исследовать данные HBase
- 4. Как «исследовать» группу серверов?
- 5. Как исследовать происхождение Excel?
- 6. Как исследовать MySQL ошибки
- 7. ksh: как исследовать stdin?
- 8. как исследовать процесс?
- 9. Как исследовать объект в perl?
- 10. Как исследовать стиль в андроиде
- 11. Как исследовать пакет в Python
- 12. Как идентифицировать анонимные методы в System.Reflection
- 13. System.Reflection Использование
- 14. Использование System.Reflection
- 15. Получите действие от API Roslyn?
- 16. Neo4j как я могу исследовать исследовать несколько соотношение noeud
- 17. Как удалить Roslyn?
- 18. Компилятор Roslyn как услуга
- 19. Как использовать Roslyn в osx?
- 20. Как можно исследовать большое значение
- 21. Как исследовать поля модели django?
- 22. Как исследовать неясные типы файлов?
- 23. System.Reflection, как получить поле и позицию собственности?
- 24. Как исследовать объекты ArrayList (java)
- 25. Простые способы, чтобы исследовать неизвестный Python API,
- 26. Как исследовать хранилище git @ heroku?
- 27. Как исследовать задержку начала SwingWorker?
- 28. System.Reflection vs Generics - performance
- 29. Использование родинок с System.Reflection
- 30. substitute system.reflection для «this»
Почему нижний предел? – ChaseMedallion
Я думаю, это было бы полезно для других, если бы вы указали, что вы пробовали. – JoshVarty