C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#のSystem.Reflection名前空間


C#のSystem.Reflection名前空間C#のSystem.Reflection名前空間には、メタデータを調べることにより、コード内のアセンブリ、モジュール、メンバー、パラメーター、およびその他の項目に関する情報を提供するタイプが含まれています。この名前空間のAssemblyクラスは、アセンブリを表します。通常、TypeのAssemblyプロパティを使用してアクセスできます。

アセンブリのIDは、4つのアイテムで構成されています-

  • 簡単な名前
  • major.minor.build.revision形式のAssemblyVersion属性のバージョン(存在しない場合は0.0.0.0)
  • 文化(衛星でない場合は中立)
  • 公開鍵トークン(厳密に名前が付けられていない場合はnull)

より完全に修飾されたアセンブリ名は文字列であり、これらの識別項目が-

の形式で含まれています。
simple-name, Version=version, Culture=culture, PublicKeyToken=public-key

たとえば、

Assembly assembly = typeof (Person).Assembly; // Person is a class name
// Prints: c-sharp, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null
Console.WriteLine(assembly.FullName);

アセンブリのロードは、既知の場所からアセンブリをロードするプロセスです。通常、CLRはフルネームを使用してアセンブリを読み込むことができます。このプロセスは、アセンブリ解決と呼ばれます。アセンブリの解決は、CLRが依存関係を解決する必要がある場合、またはプログラマーとしてAssembly.Load(assemblyName)メソッドを使用してアセンブリを動的にロードする場合に実行されます。


  1. ソフトウェアとは何ですか?

    ソフトウェアとは、広義には、ユーザーとデバイスのハードウェアの間に配置され、ユーザーがソフトウェアを使用できるようにする一連の命令(一般に「コード」と呼ばれる)です。 コンピュータソフトウェアとは何ですか? しかし、実際には、コンピュータソフトウェアとは何ですか?これは、コンピューターシステムの目に見えないコンポーネントであり、コンピューターの物理コンポーネントとの対話を可能にします。ソフトウェアを使用すると、スマートフォン、タブレット、ゲームボックス、メディアプレーヤー、および同様のデバイスと通信できます。 ハードウェアとソフトウェアには明確な違いがあることに注意することが重要です。ソ

  2. C++でのミラーリフレクション

    4つの壁のそれぞれに鏡のある特別な正方形の部屋があるとします。南西の角を除く各角に受容体があります。これらには0、1、2の番号が付けられています。正方形の部屋には長さpの壁があり、南西の角からのレーザー光線が最初に0番目の受容体から距離qで東の壁に当たります。光線が最初に出会う受容体の数を見つける必要があります。 したがって、p =2、q =1の場合、ケースは次のようになります- したがって、光線が最初に反射して左壁に戻るときに、光線が受容体2に出会うため、出力は2になります。 これを解決するには、次の手順に従います- pとqはどちらも偶数ですが、 p:=p / 2 q: