Conflit Namespace en C#
il y a un System
espace de noms à l'intérieur de mon programme de l'espace de noms. Et en conséquence Je ne peux pas voir la norme System
espace de noms de l'intérieur de la mine. Comment puis-je résoudre ce problème?
Par exemple, en C++ il y a le ::
opérateur qui "passe" me sortir de mon espace de noms, afin que je puisse voir les espaces de noms avec le même nom que mon espace de noms courant:
y a-t-il un opérateur similaire dans C#?
4 réponses
Vous devez utiliser le global
mot clé. Cela force la résolution de l'espace de noms à commencer par le haut. Il est principalement utilisé dans le code généré pour être doublement sûr que le bon espace de nom est référencé.
global::System.Foo.Bar;
Certains documentation MSDN: http://msdn.microsoft.com/en-us/library/c3ay4x3d.aspx
Pour plus de commodité, vous pouvez lui donner un alias, trop:
using GSystem = global::System;
vous permettra de faire référence à la System
espace GSystem
ou ce que vous voulez l'appeler.
oui
global::System
C'est étrange que vous ayez un conflit avec le système.
rien ne devrait déclarer que l'espace de noms excepté le système lui-même....