Método ITextTemplatingEngineHost.ResolveAssemblyReference
Permite que um host fornecer informações adicionais sobre a localização de um assembly.
Namespace: Microsoft.VisualStudio.TextTemplating
Assembly: Microsoft.VisualStudio.TextTemplating.Interfaces.10.0 (em Microsoft.VisualStudio.TextTemplating.Interfaces.10.0.dll)
Sintaxe
'Declaração
Function ResolveAssemblyReference ( _
assemblyReference As String _
) As String
string ResolveAssemblyReference(
string assemblyReference
)
String^ ResolveAssemblyReference(
String^ assemblyReference
)
abstract ResolveAssemblyReference :
assemblyReference:string -> string
function ResolveAssemblyReference(
assemblyReference : String
) : String
Parâmetros
- assemblyReference
Tipo: System.String
O assembly para resolver.
Valor de retorno
Tipo: System.String
A String que contém a referência do assembly especificado ou a referência do assembly especificado com informações adicionais.
Comentários
Se o usuário tiver especificado o opcional assembly diretiva em um modelo de texto, o mecanismo chama esse método. Esse método pode ser chamado de 0, 1 ou várias vezes, para cada transformação do modelo de texto. Para obter mais informações, consulte T4 Diretivas de modelo de texto.
Um host pode pesquisar o assembly em diferentes locais, na ordem em que ele prefere ou adicionar um caminho de sua escolha para o início da referência do assembly.
Exemplos
O exemplo de código a seguir mostra uma implementação possível para um host personalizado. Este exemplo de código é parte de um exemplo maior. For the complete example, see Demonstra Passo a passo: A criação de um Host de modelo de texto personalizado.
public string ResolveAssemblyReference(string assemblyReference)
{
//if the argument is the fully qualified path of an existing file,
//then we are done (this does not do any work)
//----------------------------------------------------------------
if (File.Exists(assemblyReference))
{
return assemblyReference;
}
//the assembly might be in the same folder as the text template that
//called the directive
//----------------------------------------------------------------
string candidate = Path.Combine(Path.GetDirectoryName(this.inputFile), assemblyReference);
if (File.Exists(candidate))
{
return candidate;
}
//this can be customized to search specific paths for the file,
//or to search the GAC
//----------------------------------------------------------------
//this can be customized to accept paths to search as command line
//arguments
//----------------------------------------------------------------
//if we cannot do better - return the original file name
return "";
}
Public Function ResolveAssemblyReference(ByVal assemblyReference As String) As String Implements Microsoft.VisualStudio.TextTemplating.ITextTemplatingEngineHost.ResolveAssemblyReference
'if the argument is the fully qualified path of an existing file,
'then we are done (this does not do any work)
'----------------------------------------------------------------
If File.Exists(assemblyReference) Then
Return assemblyReference
End If
'the assembly might be in the same folder as the text template that
'called the directive
'----------------------------------------------------------------
Dim candidate As String = Path.Combine(Path.GetDirectoryName(Me.inputFile), assemblyReference)
If File.Exists(candidate) Then
Return candidate
End If
'this can be customized to search specific paths for the file,
'or to search the GAC
'----------------------------------------------------------------
'this can be customized to accept paths to search as command line
'arguments
'----------------------------------------------------------------
'if we cannot do better - return the original file name
Return ""
End Function
Segurança do .NET Framework
- Confiança total para o chamador imediato. O membro não pode ser usado por código parcialmente confiável. Para obter mais informações, consulte Usando bibliotecas de código parcialmente confiáveis.
Consulte também
Referência
ITextTemplatingEngineHost Interface
Namespace Microsoft.VisualStudio.TextTemplating
Outros recursos
Demonstra Passo a passo: A criação de um Host de modelo de texto personalizado