2011-08-04 6 views
0

Visual Studio Object Browserのようなアプリケーションを開発したい、つまりユーザはSystem.Text名前空間やシステムクラスのようなものを入力します。ボタンをクリックすると、 "System.Text"内のすべてのクラス、関数、プロパティなどを調べなければなりません。Visual Studioオブジェクトブラウザのようなアプリケーションを作成します。

私は以下を試みましたが、失敗しました。

 Assembly SampleAssembly; 
     SampleAssembly = Assembly.Load("System.Text"); 

     Type[] Types = SampleAssembly.GetTypes(); 
     // Display all the types contained in the specified assembly. 
     StringBuilder str = new StringBuilder(); 

     foreach (Type oType in Types) 
     { 
      str.Append(oType.Name.ToString() + "</br>"); 
     } 
     divAsseblyData.InnerHtml = str.ToString(); 
+0

例外がありますか? –

+0

はい、FileNotFound例外が発生しましたか? 2行目:SampleAssembly = Assembly.Load( "System.Text"); – Justinonday

+1

「System.Text」アセンブリのようなものはありません。 mscorlib.dll内の名前空間にすぎません。コードを書き直してmscorlibを読み込み、System.Text名前空間に移動します。 –

答えて

2

'System.Text'はアセンブリではない名前空間なので、アセンブリ 'System'を読み込みたいとします。

Assembly.Load()を文字列パラメーターで使用するには、アセンブリの完全修飾名を渡す必要があります。 - 上>礼儀

Assembly SampleAssembly; 
SampleAssembly = Assembly.Load(typeof(System.Activator).Assembly.FullName); 
// get the type of some random object in the assembly (Activator) and then 
// call .Assembly.FullName which returns the fully qualified name of the assembly 

それとも、勝利 + R、タイプ「アセンブリ」を押すと入力し、右クリックすることができます:あなたはこのような何かを行うことができ、完全修飾名を取得する

あなたが形式のコードで礼儀を必要とし、手動で設定アセンブリ:

"mscorlib、バージョン= 2.0.0.0、文化=中立、なPublicKeyToken = b77a5c561934e089"

SampleAssembly = Assembly.Load("mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"); 
+0

これはアセンブリの名前を見つけるのに素晴らしいヒントです! – Jacob

+0

okありがとうRazan Panda sir.canあなたは次に何をするかを共有できます!つまりmscorlib.dllでSystem.TextまたはSystem.Webをどのようにナビゲートできますか? – Justinonday

+0

@Justin:ナビゲートするとどういう意味ですか?あなたは何する必要があるの? –

関連する問題