「using」キーワードとの .Net 名前空間の競合をどのように解決しますか?

StackOverflow https://stackoverflow.com/questions/61262

  •  09-06-2019
  •  | 
  •  

質問

ここで問題が発生します。複数のアセンブリをインクルードし、コード ファイルの先頭に「using namespaceX」を追加します。
次に、クラスを作成するか、複数の名前空間で定義されているシンボルを使用します。 例えば。 System.Windows.Controls.Image & System.Drawing.Image

完全修飾名を使用しない限り、上部で適切な 'using' 宣言を行っているにもかかわらず、あいまいさが原因で crib/build エラーが発生します。ここから出る方法は何ですか?

(別のナレッジベースの投稿..検索する適切なキーワードがわからなかったので、10分ほど検索して答えを見つけました)

役に立ちましたか?

解決

エイリアスを使用する

using System.Windows.Controls;
using Drawing = System.Drawing;

...

Image img = ... //System.Windows.Controls.Image
Drawing.Image img2 = ... //System.Drawing.Image

方法:名前空間エイリアス修飾子の使用 (C#)

他のヒント

このページには、名前空間と using ステートメントについて非常に詳しく書かれています。

http://www.blackwasp.co.uk/Namespaces.aspx

「エイリアスの作成」に関する部分を読んでください。これにより、次のように、名前空間の一方または両方のエイリアスを作成し、それを使用してエイリアスを参照できるようになります。

using ControlImage = System.Windows.Controls.Image;
using System.Drawing.Image;

ControlImage.Image myImage = new ControlImage.Image();
myImage.Width = 200;
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top