Возникают проблемы, когда две из упомянутых сборок обе определяют тип 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

Ответы на вопрос(2)

Ваш ответ на вопрос