Todavía no he descubierto por qué ocurre esto, pero tenía clases que estaban en mi App_Code
carpeta que llamaban métodos entre sí, y lo hice bien cuando construí un proyecto .NET 4.5.2, pero luego tuve que revertirlo a 4.0 ya que el servidor de destino no se estaba actualizando. Fue entonces cuando encontré este problema (después de arreglar ellangversion
en mi web.config de 6 a 5 ... otra historia) ...
Uno de mis métodos seguía teniendo un error como:
The type X.Y conflicts with the imported type X.Y in MyProject.DLL
Todas mis clases ya estaban configuradas para "Compilar" en sus propiedades, como se sugiere en la respuesta aceptada aquí, y cada una tenía un espacio de nombres común que era el mismo, y cada uno tenía using MyNamespace;
la parte superior de cada clase.
Descubrí que si solo movía las clases ofensivas que tenían que llamar métodos entre sí a otra carpeta estándar llamada algo diferente a "App_Code", dejaban de tener este problema de conflicto.
Nota : Si crea una carpeta estándar llamada "AppCode", mueva sus clases a ella, elimine la carpeta "App_Code", luego cambie el nombre de "AppCode" a "App_Code", sus problemas volverán. No importa si utiliza la opción "Nueva carpeta" o "Agregar carpeta ASP .NET" para crear "App_Code", parece que debe ingresar el nombre.
Tal vez esto sea solo un problema de .NET 4.0 (y posiblemente anterior) ... ¡Estaba bien en 4.5.2 antes de tener que volver!