クラスのソースコードをオブジェクトとして表現する方法はありますか?私はメソッド、それらのボディなどをナビゲートしたいと思います。どのようにstylecop、ReSharperのようなツールをVisual Studio 2010で実行しますか?ソースコードファイルを入力してオブジェクトの表現を生成する外部ライブラリはありますか?どちらを読んだり、修正したり、分析したりできますか?C#のオブジェクトとしてのソースコード
4
A
答えて
2
既にコンパイルされたアセンブリと同じです。 Reflectionはオブジェクト構造に関するほとんどの情報を提供します。しかし、実際のコードを取得するには、ILに下がる必要があります。
Visual Studioで開いているコードでは、VSはこれらのプラグインの多くが使用するCOMインターフェイスを公開します。 EnvDTEは、このインタフェースの周りに管理されたラッパーです。しかし、ドキュメントはほとんどありません。
2
NRefactoryがあなたのためにこれを行います。
http://wiki.sharpdevelop.net/NRefactory.ashx
編集を:これは、あなたが望むものである "パーサ" です。これは、C#コードを抽象構文木に変換します。抽象構文木は、コードで修正してC#に戻すことができます。
0
あなただけのメソッド、クラス、プロパティ名を一覧表示したい場合には、反射が良いシンプルなソリューションです - 例えばhttp://www.java2s.com/Tutorial/CSharp/0400__Reflection/ListMethods.htm
メソッドボディを含む詳細な解析が必要な場合は、1つ以上のReflector置換のソースコードから開始することをお勧めします。
関連する問題
- 1. 編集ソースコードとC#
- 2. リバースエンジニアリングアセンブリのCソースコード
- 3. Cライブラリのソースコード
- 4. SetFileAttributeW C++のソースコード
- 5. Cのstrcmpのソースコード
- 6. C#リンクリストのサイズ(ソースコード)
- 7. Objective-cソースコードとバイナリ間の中間ステップビルド
- 8. C++暗号化と復号化のソースコード
- 9. C++プロジェクトのソースコードのレイアウト
- 10. Visual C++のmainCRTStartup()のソースコード
- 11. C++(vC++)のソースコードの美化?
- 12. gccは有効なCプログラムとして* .Cソースコードを認識しません
- 13. Cソースコードのラテックス文書
- 14. アクセスプロパティ - 以下のソースコードはC#
- 15. 記法Quakeのソースコード(C)
- 16. xバリデーターのソースコードをC
- 17. C++用のソースコード依存マネージャー
- 18. 他のオブジェクトの属性としてのオブジェクトC++
- 19. Xcode4のライブラリとしてソースコードを追加
- 20. RでダウンロードしたソースコードとWebサイトのソースコードとの相違
- 21. コメントと空白を無視してCのソースコード内の行をカウント
- 22. CソースコードASTパーサー(Java)
- 23. pdbをデコンパイルしてC#のソースコードを取得する方法は?
- 24. C++:ソースコード内のメタデータ情報。 ASTを通して見る
- 25. C++のコードとオブジェクトはC?
- 26. ロバートC.マーティンブックのPaymentrollサンプルのソースコード
- 27. DLLのソースコード内のC++関数フック
- 28. JavaとC#のオブジェクト
- 29. Objective-Cブロック - オブジェクトとして使用
- 30. getcontextとsetcontextのソースコード
私は、既存のコードに干渉し、私のタグまたはそのような何かから何かを生産するアドインを書きたいのですが...例:これは、コードに次のようになります。 // BUG(「マイク」は、「これはマイクが解決すべきバグである」) 私は、このタグと火の手順MATCを見つけ、ファイルを分析したいですこのタグに時間 - TFS上のバグを作成して、マイクに割り当てと説明(第二引数)を追加 EnvDTEが役立つことができますか?または、私はそれを行う他のライブラリを見つける必要がありますか? – Simon