Возникают проблемы, когда две из упомянутых сборок обе определяют тип A.A1
Если две сборки обе определяютnamespace A
содержащийclass A1
тогда два класса считаются уникальными типами.
а) Два пространства имен также считаются уникальными?
б) еслиprogram P
имеет ссылку на обе сборки, как мы можем создать экземпляры двух типов? А именно, я продолжаю получать сообщение об ошибке при попытке создать экземплярA.A1
using A;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
A1 a = new A1(); // error
}
}
}
в) Но еслиprogram P
также определяетtype B.A1
то компилятор не жалуется, когда я объявляю экземплярA1
:
using A;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
A1 a = new A1(); // ok
}
}
class A1 { }
}
Компилятор не должен жаловаться, так как не может знать, какая версияA1
использовать (A.A1
от одной из упомянутых сборок илиB.A1
)?
Thanx