Поделиться через


Ошибка компилятора CS1704

Обновлен: Ноябрь 2007

Сообщение об ошибке

Сборка с таким простым именем "имя сборки" уже импортирована. Удалите одну из ссылок или подпишите сборки для одновременного использования.
An assembly with the same simple name 'Assembly Name' has already been imported. Try removing one of the references or sign them to enable side-by-side.

Эта ошибка указывает, что две ссылки имеют одинаковую идентификацию сборки, так как рассматриваемые сборки не имеют строгих имен, они не были подписаны и, следовательно, компилятору не удалось различить их в метаданных. Таким образом, время выполнения игнорирует версию и свойства языка и региональных параметров имени сборки. Пользователь должен удалить лишнюю ссылку, переименовать одну из ссылок или дать им строгие имена.

Пример

В следующем примере создается сборка, которая сохраняется в корневом каталоге.

// CS1704_a.cs
// compile with: /target:library /out:c:\\cs1704.dll
public class A {}

Следующий пример создает сборку с тем же именем, что и в первом примере, но сохраняет ее в другой каталог.

// CS1704_b.cs
// compile with: /target:library /out:cs1704.dll
public class A {}

В это примере осуществляется попытка создания ссылки на обе сборки. Этот пример приводит к возникновению ошибки CS1704.

// CS1704_c.cs
// compile with: /target:library /r:A2=cs1704.dll /r:A1=c:\\cs1704.dll
// CS1704 expected
extern alias A1;
extern alias A2;