1

コードのドキュメントを作成する必要があります。このために、数百の C# クラスから情報を抽出する必要があります。

基本的に、各クラスにはいくつかのメソッドが含まれていますMyMethod。この方法では、switch場合によっては少ないケースもあるかもしれません。全体のコード構造はこんな感じ

MyMethod()
{
..some code..

switch (variable)
    case "A":
          break;
    case "B":
          break;

..some other code..
}

必要なのは、スイッチケースを検索して値MyMethodを抽出することだけcaseです。

これまでのところ、Roslyn または Nrefactory を使用してすべての .cs ファイルを解析し、AST を使用してそれらを調べて、必要な AST ノードを抽出するオプションを考え出しました。

しかし、このアプローチは少し奇妙に見えます。なぜなら、タスクはおそらく他の方法で完全に自動化できるからです。私は明確なファイル構造を持っており、チェックする必要があるメソッド名を正確に知っており、そのswitch中にステートメントが 1 つだけあります。いつも。

情報を抽出してこのドキュメントを生成する他の便利な方法はありますか?

4

2 に答える 2

2

私が考えることができるのは、C# ファイルを解析するか、Mono.Cecil などを使用してコンパイルされた IL を解析することだけです。前者の場合、友人が作成した C# パーサーをここで入手できます。

もちろん、parse-cs の方法を使用する場合は、Roslyn が適切なオプションになりました。ここに簡単な紹介があります: http://www.filipekberg.se/2011/10/20/using-roslyn-to-parse-c-code-files/

于 2016-02-21T01:42:18.443 に答える