IVsSharedProjectQueryCanBeReferenced.QueryCanSharedProjectBeReferenced(IVsHierarchy) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Chamado pela EnumAllAvailableSharedProjects(IVsHierarchy) implementação para filtrar a lista de projetos compartilhados apenas para escolhas válidas para o ReferencingProject .
public:
System::UInt32 QueryCanSharedProjectBeReferenced(Microsoft::VisualStudio::Shell::Interop::IVsHierarchy ^ ReferencingProject);
public:
unsigned int QueryCanSharedProjectBeReferenced(Microsoft::VisualStudio::Shell::Interop::IVsHierarchy ^ ReferencingProject);
unsigned int QueryCanSharedProjectBeReferenced(Microsoft::VisualStudio::Shell::Interop::IVsHierarchy const & ReferencingProject);
public uint QueryCanSharedProjectBeReferenced (Microsoft.VisualStudio.Shell.Interop.IVsHierarchy ReferencingProject);
abstract member QueryCanSharedProjectBeReferenced : Microsoft.VisualStudio.Shell.Interop.IVsHierarchy -> uint32
Public Function QueryCanSharedProjectBeReferenced (ReferencingProject As IVsHierarchy) As UInteger
Parâmetros
- ReferencingProject
- IVsHierarchy
O projeto que deseja adicionar uma referência de projeto compartilhado.
Retornos
Um valor de resultado VSREFERENCEQUERYRESULT que indica se a referência é permitida ou não.
Comentários
A implementação mínima esperada desse método por um projeto compartilhado é impor que o idioma do projeto compartilhado seja compatível com o idioma do referencingProject. Essa verificação normalmente é feita executando uma verificação de IsCapabilitiesMatch. por exemplo,
return referencingProject.IsCapabilityMatch($(SharedProjectAppliesTo));
onde a propriedade $ (SharedProjectAppliesTo) do projeto compartilhado é uma expressão de recursos thatensures que o referencingProject é de uma linguagem compatível (e, possivelmente, outros critérios para cenários de projeto compartilhados avançados). Por exemplo, a propriedade SharedProjectAppliesTo definida no arquivo Microsoft. CSharp. CodeSharing. targets é a seguinte
<SharedProjectAppliesTo>CSharp<\SharedProjectAppliesTo>