2012-02-29 13 views
7

A veces, VS no me deja editar y continuar, y resulta que es porque mi proyecto Eric.Controls tiene una referencia a Eric.Controls. Es una referencia de proyecto, que nunca agregué. Los pasos para reproducir son inconsistentes, pero en general, creo que sucede cuando uso el diseñador y agrego un control de un proyecto diferente al que hago referencia.¿Por qué Visual Studio 2010 sigue agregando una "referencia a sí mismo" en la biblioteca de mi clase?

Esto ocasionalmente también hace que no pueda compilar hasta que reinicie Visual Studio que tiene el ejecutable de destino bloqueado.

En primer lugar, ¿por qué VS incluso permitiría que un proyecto se refiera a sí mismo?

¿Alguna idea?

Me complace responder a cualquier pregunta que pueda dar lugar a una respuesta.

+2

Pura especulación, (de ahí un comentario y no una respuesta) pero ¿de alguna manera ha logrado construir una referencia circular? Es decir. El proyecto que proporciona el control, ¿hace referencia directa o indirectamente a Eric.Controls? Creo que Visual Studio debería evitar que lo haga, pero quizás es posible si uno de los ensamblados implicados es referenciado por archivo en lugar de por proyecto. – Weeble

+0

Buena idea, pero no, lo he comprobado. VS no lo permitirá cuando compile. – skimania

Respuesta

4

¡Encontró la respuesta!

Si usa carpetas de solución y tiene su proyecto que contiene el control en una carpeta de solución, cuando arrastra un control desde la caja de herramientas, agrega la referencia a esa biblioteca.

Solución: no coloque bibliotecas de control en las carpetas de soluciones.

0

Tuve el mismo problema. En mi caso, el diseñador tenía la culpa. El diseñador agregó a veces referencias de archivos a mis proyectos. Especialmente cuando se usa DataBinding y Forms.

P.S .: Las referencias de archivos mostradas por el espacio de nombres y las referencias del proyecto se muestran por nombre del proyecto en la carpeta de referencias.

Cuestiones relacionadas