2016-09-05 2 views
0

現在、いくつかのコードをいくつか変更して表示しています。クラス定義の1つを見ると、コードにはこれまで見たことのない構文があります。C#クラスのフィールド名(ドット付き)

enter image description here

フィールドの種類の中には、それらの上に接頭辞(例えばImplementationGuide.PackageとTableModel.Row)を持っています。この記法は何ですか?

型が定義されている名前空間と何らかの関係があるようですが、最後のコンポーネントだけの完全な名前空間ではないようです。

助けがありましたら

答えて

4

部分的な名前空間の参照です。これは、異なる名前空間にある同じ名前のクラスを区別するために使用されます。親ネームスペースが現在のネームスペースであるか、ファイルに含まれているため、これは部分的なものになります。

@ScottChamberlainという別の方法として、ネストされたクラスにすることができます。つまり、TableModelはクラスであり、名前空間ではなく、という名前の内部クラスを持っています。 TableModelクラスの外側では、内部クラスを参照するときにネストされたクラスの親を参照する必要があります。

+2

名前に基づいて、私はそれらが名前空間だとは思わない、私は彼らが入れ子のクラスであることにお金を置くだろう。 –

+0

@ScottChamberlain私は、それが名前空間に関連していたというOPsのコメントだけに行きます。おそらくネストされたクラスである可能性があります。 – tvanfosson

+0

私はそれを取り戻す、テキストは黒の画像ではなく、ネストされたクラスであれば最初のレイヤーはまだ青であると思う。 –

関連する問題