Me encuentro con un problema donde no puedo hacer una referencia a una clase en un espacio de nombres diferente. Tengo 2 clases:C#: Problema al intentar resolver una clase cuando dos espacios de nombres son similares
namespace Foo
{
public class Class1 { ... }
}
namespace My.App.Foo
{
public class Class2
{
public void SomeMethod()
{
var x = new Foo.Class1; // compile error!
}
}
}
El error de compilación es:
El tipo o espacio de nombres 'Clase 1' no existe en el espacio de nombres 'My.App.Foo'
En esta situación, parece que no logro que Visual Studio reconozca que "Foo.Class1" hace referencia a la primera clase. Si el ratón sobre "Foo", muestra que su tratando de resolver que a "My.App.Foo.Class1"
Si pongo la línea:
using Foo;
en la parte superior de la. archivo cs que contiene Class2, luego también lo resuelve en "My.App.Foo".
¿Hay algún truco para hacer referencia al espacio de nombres "Foo" correcto sin cambiar el nombre de los espacios de nombres para que no entren en conflicto? Ambos espacios de nombres están en el mismo ensamblaje.
ding ding ding - cortar el hombre un cheque. –
Eso no funciona en mi entorno. Creo que necesitas tener global antes que el :: – BlueMonkMN
@BlueMonkMN - sí, lo arreglé justo ahora. – LBushkin