IVsDataSourceSpecializer.GetAssembly 메서드
어셈블리 공급자별 문자열은 해당 해결 Assembly DDEX 특정 데이터 소스에 대 한 표현.
네임스페이스: Microsoft.VisualStudio.Data.Core
어셈블리: Microsoft.VisualStudio.Data.Core(Microsoft.VisualStudio.Data.Core.dll)
구문
‘선언
Function GetAssembly ( _
source As Guid, _
assemblyString As String _
) As Assembly
Assembly GetAssembly(
Guid source,
string assemblyString
)
Assembly^ GetAssembly(
Guid source,
String^ assemblyString
)
abstract GetAssembly :
source:Guid *
assemblyString:string -> Assembly
function GetAssembly(
source : Guid,
assemblyString : String
) : Assembly
매개 변수
- source
형식: System.Guid
DDEX 데이터 소스 식별자입니다.
- assemblyString
형식: System.String
어셈블리 공급자별 문자열입니다.
반환 값
형식: System.Reflection.Assembly
Assembly 경우 어셈블리 해결 DDEX 데이터 소스의 지정 된 문자열을 지정 된 어셈블리에서 개체를 나타내는 찾을 수 있습니다. 그렇지 않으면 nullNull 참조(Visual Basic의 경우 Nothing).
예외
예외 | 조건 |
---|---|
ArgumentNullException | assemblyString 매개 변수가 nullNull 참조(Visual Basic의 경우 Nothing)입니다. |
설명
어셈블리를 자동으로 확인할 수 없는 (또는 정확 하 게 확인할 수 있습니다) 이름 지정 문자열 등의 데이터 형식에 XML 파일과 어셈블리 이름을 이러한 지원으로 있을 때이 메서드는 공급자를 구현 하면 CLR의 Load 메서드.이 메서드를 한 번 사용할 확장 된 불완전 한 어셈블리 선언 것입니다.(문자열 "MyAssembly" 이면 예를 들어,이 확장 얻을 수 있습니다 "MyAssembly, 버전 2.0.0.0, Culture = = 중립, 예와 1234567890ABCDEF =" CLR이를 해결 하기 전에.)
이 메서드는 공급자의 사양 형식 이름, 코드 베이스 전체에서 일반적으로 사용 되는 어셈블리의 중복을 줄일 수 있습니다을 줄이기 위해 제공 됩니다.이 메서드에 의해 제공 된 데이터 소스 특수화 공용 어셈블리 문자열을 사용 하 여 클라이언트에서 다른 DDEX 데이터 원본을 대상으로 하는 경우 잠재적으로 다른 어셈블리를 참조할 수 있습니다.
예제
다음 코드는 DDEX 데이터 원본에 따라 서로 다른 어셈블리를 반환 하도록이 메서드를 구현 하는 방법을 보여 줍니다.이 예제에서는 프레임 워크에서 상속 DataSourceSpecializer 인터페이스에 다른 방법의 기본 구현을 제공 하는 클래스입니다.
using System;
using System.Reflection;
using Microsoft.VisualStudio.Data.Core;
using Microsoft.VisualStudio.Data.Framework;
public class MySourceSpecializer4 : DataSourceSpecializer
{
private static readonly Guid s_dataSource1 =
new Guid("EB5246D3-277C-4277-910F-111CB9EAD253");
private static readonly Guid s_dataSource2 =
new Guid("1EC8B196-7155-4d5a-BBDC-0CC47D631E52");
public override Assembly GetAssembly(Guid source, string assemblyString)
{
if (source == s_dataSource1)
{
return Assembly.Load("AssemblyForDataSource1");
}
else if (source == s_dataSource2)
{
return Assembly.Load("AssemblyForDataSource2");
}
else
{
return base.GetAssembly(source, assemblyString);
}
}
}
.NET Framework 보안
- 직접 실행 호출자의 경우 완전히 신뢰합니다. 이 멤버는 부분적으로 신뢰할 수 있는 코드에서 사용할 수 없습니다. 자세한 내용은 부분 신뢰 코드에서 라이브러리 사용을 참조하십시오.