Ler em inglês

Compartilhar via


Erro do Compilador CS0101

O namespace "namespace" já contém uma definição para "type"

Um namespace tem identificadores duplicados. Renomeie ou exclua um dos identificadores duplicados. Para obter mais informações, confira Namespaces

O seguinte exemplo gera o erro CS0101:

// CS0101.cs  
namespace MyNamespace  
{  
   public class MyClass  
   {  
      static public void Main()  
      {  
      }  
   }  
  
   public class MyClass   // CS0101  
   {  
   }  
}  

Um CS0101 também é gerado quando o nome da classe entra em conflito com o nome do namespace. Isso pode acontecer ao expandir com classes auxiliares para a classe base em que você tenta manter a rota do namespace inalterada. No exemplo abaixo, a classe UTF8 deve ser claramente uma subsidiária da classe String, mas tentar incluí-la a força no mesmo namespace declarando ele como Utilities.String causará um erro CS0101:

//CS0101-Utilities.String.cs
namespace Utilities
{  
   public class String
   {  
        public string MyString;
   }  
}

//CS0101-Utilities.String.UTF8.cs
namespace Utilities.String  // CS0101  
{  
   public class UTF8
   {  
        public string MySecondString;
   }  
}