- PR -

App_Codeにあるクラス名全てを取得したい

1
投稿者投稿内容
たけ
会議室デビュー日: 2007/03/12
投稿数: 2
投稿日時: 2007-03-12 17:25
はじめまして。

ASP.netでApp_Code内で定義されているクラス名全てを取得したいのですが、
うまく取得できません。
特定のクラスのメソッドなどはReflectionを使用すれば
取得できるところまではたどり着いたのですが。。。。

ご教授お願いいたします。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2007-03-12 20:42
引用:

たけさんの書き込み (2007-03-12 17:25) より:
はじめまして。

ASP.netでApp_Code内で定義されているクラス名全てを取得したいのですが、
うまく取得できません。
特定のクラスのメソッドなどはReflectionを使用すれば
取得できるところまではたどり着いたのですが。。。。

ご教授お願いいたします。


どこから、
誰が、
参照するのでしょう?


同じアセンブリが列挙したいのか、違うアセンブリが列挙したいのかで、可能かどうかが変わると思う。あと、app_code以下だけ?
_________________
たけ
会議室デビュー日: 2007/03/12
投稿数: 2
投稿日時: 2007-03-13 09:34
同じWebアプリケーションフォルダから
参照しようと思っています。

VS2003で作成することが出来た簡単な
リファレンスみたいなのを出力できないものかと
思いまして。
よこけん
大ベテラン
会議室デビュー日: 2006/01/31
投稿数: 216
投稿日時: 2007-03-13 17:44
引用:
VS2003で作成することが出来た簡単な
リファレンスみたいなのを出力できないものかと
思いまして。



つまり、Jittaさんの「同じアセンブリが列挙したいのか、違うアセンブリが列挙したいのか」という質問の答えは
後者ということでよろしいでしょうか。
で、App_Code以下という考え方ではなく、一つの(ASP.NETの)アセンブリで定義されている全てのクラスを取得できれば
いいってことでよろしいでしょうか。(DataSetやリソースなどIDEが自動生成するクラスも含まれるかもだけど)

(VS2005の)ASP.NETでは、[ ビルド ] - [ Webサイトの発行 ] を行うと、発行先のBinフォルダにアセンブリが出力されます。
このアセンブリをリフレクションで読み込み、Assembly.GetTypesメソッドを使えば、アセンブリに定義されている全ての型を取得できます。

Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2007-03-14 10:38
 『VS2003で作成することが出来た簡単なリファレンス』って、何でしょう?
 VS2005 での詳しい方法はよく知らないのですが、XML コメントを追加しておいて、XDoc だっけ?で XML を取り出し、XSLT で適切に変換する...ということではなく?


以下、いつも思うこと。

 「初心者」を自称する人ほど、「なぜ、そうしたいのか」を省略する傾向があるように思います。「なぜ、そうしたいのか」が書かれていれば、もっと早く解決することが、よくあります。タイプするのは面倒ですが、解決するのに時間がかかることに比べたら微々たる面倒ですので、開示可能な範囲で書くようにしてください。

 同じく「初心者」を自称する人ほど、「俺用語」を説明なく使う傾向があるように思います。ここでは『VS2003で作成することが出来た簡単なリファレンス』ですね。これも混乱や、解決を長引かせる元です。
 VS2005 で C# を使っていて、別のアセンブリを参照するようなことをしてれば、コンパイルがされずに XML ドキュメントができないのかなぁ・・・なんて思ってみたり。
(ASP.NET の MVP なのに、VS2005 では ASP.NET プロジェクトを作成していないという、この矛盾。。。)

_________________
ぼのぼの
ぬし
会議室デビュー日: 2004/09/16
投稿数: 544
投稿日時: 2007-03-15 09:30
ひょっとすると、ASP.NETプロジェクトでドキュメント コメントが作れないってことでしょうかね?

ご参考:http://vsug.jp/tabid/63/forumid/47/postid/3251/view/topic/Default.aspx
よこけん
大ベテラン
会議室デビュー日: 2006/01/31
投稿数: 216
投稿日時: 2007-03-15 11:14
リフレクションでクラス名などのメタデータを取得したいとのことなので、ドキュメントコメントではなく、Webページのビルドコメントのことを指しているのではないでしょうか? (この機能、VS2005ではなくなってますよね。。。)
ちなみに、僕の2007-03-13 17:44の投稿はそう解釈した上での発言です。

引用:
(1)Webページのビルドコメント
(コメントをHtml化した、 コード コメント Web レポート を作成してくれる)
(2)ドキュメントコメント
(XMLファイル)




どちらにしろ、質問者さんが現れないことには話が進みませんね。
1

スキルアップ/キャリアアップ(JOB@IT)