Compartilhar via


Gerenciando referências do projeto

Antes que você escreva código para um componente externo, seu projeto deve primeiramente conter uma referência para o componente.Uma referência pode ser feita aos seguintes tipos de componentes:

  • Bibliotecas de classes do .NET Framework ou assemblies

  • Componentes COM

  • Outros conjuntos de módulos (assemblies) ou bibliotecas de classes de projetos na mesma solução

  • XML Web Services

Para obter mais informações sobre referências de XML Web Services, consulte Web References.

Adicionando uma referência em tempo de design

Para adicionar em tempo de design uma ou mais referências, você usa a caixa de diálogo do Gerenciador de referência ou a caixa de diálogo de Adicionar Referência , dependendo do tipo de projeto que você está criando.Você usa a caixa de diálogo do gerenciador de referência para todos os aplicativos de Windows Store e a maioria dos outros tipos de projetos.Para obter mais informações, consulte Como: Adicionar ou remover referências usando o Gerenciador de Referências.Alguns outros tipos de projeto oferecem suporte a caixa de diálogo de Adicionar Referência .Para obter mais informações, consulte Como: Adicionar ou remover referências usando a caixa de diálogo Adicionar referência.

Você pode usar a caixa de diálogo de Adicionar Referência para procurar conjuntos de módulos (assemblies) que não são listados.Você não pode adicionar referências a Cache global de assemblies (GAC), porque ele é parte estritamente do ambiente de tempo de execução.

Quando você faz uma referência a um conjunto em seu projeto, Visual Studio procura o assembly nos seguintes locais:

  • O diretório do projeto atual.(Você pode encontrar esses conjuntos de módulos (assemblies) usando a guia Browse).

  • Outros diretórios de projeto na mesma solução. (Você pode encontrar esses conjuntos de módulos (assemblies) na guia Projects).

Para obter mais informações sobre como adicionar referências em tempo de design, consulte Como: Adicionar ou remover referências usando a caixa de diálogo Adicionar referência.

ObservaçãoObservação

Todos os projetos contêm uma referência implícita para mscorlib.Os projetos do Visual Basic contém uma referência implícita a Microsoft.VisualBasic.

Todos os projetos no Visual Studio contém uma referência implícita a System.Core, mesmo se System.Core é removido da lista de referências.

Referências a componentes compartilhados em tempo de execução

Em tempo de execução, componentes devem ser no caminho de saída do projeto ou na caixa Cache global de assemblies (GAC).Se o projeto contiver uma referência a um objeto que não esteja em um desses locais, a referência deve ser copiada para o caminho de saída do projeto quando o projeto é criado.A propriedade CopyLocal indica se esta cópia tem a ser feita.Se o valor for True , a referência é copiada para a pasta do projeto ao criar o projeto.Se o valor for False ,a referência não é copiada.

Se você implantar um aplicativo que contém uma referência a um componente personalizado que está registrado no GAC, o componente não será implantado com o aplicativo, independentemente da configuração CopyLocal.Em versões anteriores do Visual Studio, você pode definir a propriedade CopyLocal em uma referência para garantir que o assembly foi implantado.Agora, você deve adicionar manualmente o assembly à pasta \Bin.Isso coloca todo código personalizado sob exame detalhado, reduzindo o risco de publicar código personalizado com o qual você não está familiarizado.

Por padrão, a propriedade [P:Microsoft.VisualStudio.VCProjectEngine.VCProjectReference.CopyLocalestádefinidacomo]False se o assembly ou componente está no cache global de assemblies ou é um componente de estrutura.Caso contrário, o valor é definido como true.Referências de projeto-a-projeto são sempre definidas como true.

Referenciando Project ou um assembly que tem como alvo uma versão diferente do .NET Framework

Você pode criar aplicativos que referenciam os projetos ou assemblies que tenham como alvo uma versão diferente do .NET Framework.Por exemplo, você poderia criar um aplicativo que destinasse .NET Framework 4 Client Profile que referencia um assembly que tem como alvo .NET Framework 2.0.Se você criar um projeto que tem como alvo uma versão anterior de .NET Framework, você não pode definir uma referência no projeto a um projeto ou em um assembly que se aplica a versão 4. .NET Framework 4 Client Profile de ou do .NET Framework.

Para obter mais informações, consulte Almejando um específico.NET Framework versão ou perfil.

Referências projeto-a-Projeto e referências de arquivos

Referências de arquivo são referências diretas para conjuntos de módulos (assemblies); você os cria usando a guia Browse da caixa de diálogo Adicionar Referência .Referências projeto-a-projeto são referências a projetos que contenham conjuntos de módulos (assemblies); você cria-los usando a guia Project da caixa de diálogo Adicionar Referência .

A vantagem de uma referência projeto a projeto é que ele cria uma dependência entre os projetos no sistema de compilação.Portanto, o projeto dependente será criado se ele tiver sofrido alterações desde a última vez que o projeto de referência foi criado.Uma referência de arquivo não cria uma dependência de compilação, portanto, é possível criar o projeto de referência sem a criação do projeto dependente, e a referência pode se tornar obsoleta.(Ou seja, o projeto pode fazer referência um versão anteriormente criada do projeto.) Isso pode resultar em várias versões de uma única DLL seja necessária no diretório Bin, que não é possível.Quando esse conflito ocorre, você verá uma mensagem como Aviso: a dependência 'arquivo' no projeto 'projeto' não pode ser copiada para o diretório de execução porque ele substituiria a referência 'arquivo'..

Você deve evitar adicionar referências de arquivo a saídas de outro projeto na mesma solução, porque isso pode causar erros de compilação.Em vez disso, use a guia Projects da caixa de diálogo Adicionar Referência para criar referências Project-to-project dentro da mesma solução.Isso torna desenvolvimento em equipe mais fácil, permitindo melhor gerenciamento das bibliotecas de classes criadas em seus projetos.Para obter mais informações, consulte Solução de problemas de referências quebradas e Como: criar e remover dependências de projeto.

ObservaçãoObservação

Uma referência de arquivo em vez de uma referência de projeto é criada se a versão de destino do .NET Framework de um projeto é a versão 4,5, e a versão de destino do outro projeto é a versão 2, 3, 3,5, 4,0 ou.

Referências Web

Você também pode adicionar referências Web na caixa de diálogo Add Web Reference.Para obter mais informações, consulte How to: Add and Remove Web References.

Consulte também

Tarefas

Solução de problemas de referências quebradas

Como: Adicionar ou remover referências usando a caixa de diálogo Adicionar referência

Conceitos

Como: Adicionar ou remover referências usando o Gerenciador de Referências

Outros recursos

Referencing Namespaces and Components

Managing References

Programando com Assemblies