Erro de depuração "O tipo 'xx' é definido em uma montagem que não é referenciada"
O erro completo é o seguinte:
O tipo 'System.Windows.Forms.Control' é definido em um assembly que não é referenciado. Você deve adicionar uma referência ao assembly 'System.Windows.Forms, Version = 2.0.0.0, Culture = neutral, PublicKeyToken = b77a5c561934e089'.
e aponta para a primeira instrução (uma linha Debug.Assert) na primeira classe em um projeto de biblioteca que não precisaSystem.Windows.Forms
(ou assim eu pensei). Eu sei como resolvê-lo: adicione a referência mencionada. Mas como descobrir qual biblioteca está causando esse erro, ou melhor, que parte do código é acionada usando a biblioteca WinForms?
Normalmente, você pode adicionar bibliotecas que fazem referência a outras, mas você só precisa adicionar referências a essas outras quando elas são realmente usadas.
EDIT: solução alternativaEste ou problemas semelhantes também podem ser resolvidos usando oVisualizador do Log de Ligação Fuslogvw.exe das ferramentas de estrutura da Microsoft. Ele mostra todas as tentativas e sucessos de assemblies vinculados ao seu aplicativo.