Método IVsDataSourceSpecializer.GetType
Resolve um nome específico do provedor de tipo para sua representação correspondente de Type , para uma fonte de dados específica de DDEX.
Namespace: Microsoft.VisualStudio.Data.Core
Assembly: Microsoft.VisualStudio.Data.Core (em Microsoft.VisualStudio.Data.Core.dll)
Sintaxe
'Declaração
Function GetType ( _
source As Guid, _
typeName As String _
) As Type
Type GetType(
Guid source,
string typeName
)
Type^ GetType(
Guid source,
String^ typeName
)
abstract GetType :
source:Guid *
typeName:string -> Type
function GetType(
source : Guid,
typeName : String
) : Type
Parâmetros
- source
Tipo: System.Guid
Um identificador de fonte de dados de DDEX.
- typeName
Tipo: System.String
Um nome específico do provedor do tipo.
Valor de retorno
Tipo: System.Type
Um objeto de Type que representa o tipo resolvido do nome especificado do tipo, para a fonte de dados especificada de DDEX, se encontrado; caso contrário, nulluma referência nula (Nothing no Visual Basic).
Exceções
Exceção | Condição |
---|---|
ArgumentNullException | o parâmetro de typeName é nulluma referência nula (Nothing no Visual Basic). |
Comentários
Um provedor implementa este método quando há nomes de tipo especificados como cadeias de caracteres nos formatos como um arquivo XML de suporte de dados, e esses nomes de tipo não podem ser automaticamente resolvidos (ou) incorretamente é determinado pelo método de GetType de CLR.Um uso de esse método seria expandir um namespace não especificado.(Por exemplo, se a cadeia de caracteres” é “Tipo “expandido pode obter a Company.Product.MyType” antes que o CLR o resolver.)
Este método é fornecido para diminuir a especificação de um provedor de nomes de tipo, que podem ajudar a reduzir a evitar duplicação de itens, como um namespace comuns, durante a base de código.A especialização da fonte de dados fornecida por esse método permite mais comuns usando nomes de tipo para tipos de referência potencialmente diferentes quando as fontes de dados diferentes de DDEX são direcionados pelo cliente.
Exemplos
O código a seguir demonstra implementar esse método para preceda a namespaces diferentes todos os nomes de tipo, dependendo da fonte de dados de DDEX.O exemplo herda da classe de DataSourceSpecializer estrutura, que fornece uma implementação padrão dos outros métodos da interface.
using System;
using Microsoft.VisualStudio.Data.Core;
using Microsoft.VisualStudio.Data.Framework;
public class MySourceSpecializer5 : DataSourceSpecializer
{
private static readonly Guid s_dataSource1 =
new Guid("EB5246D3-277C-4277-910F-111CB9EAD253");
public override Type GetType(Guid source, string typeName)
{
if (source == s_dataSource1)
{
typeName = "Company.DdexProvider.Source1." + typeName;
}
else
{
typeName = "Company.DdexProvider." + typeName;
}
return GetType().Assembly.GetType(typeName);
}
}
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.