ILogicalThreadAffinative 인터페이스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
AppDomain의 LogicalCallContext에서 전파되는 개체를 표시합니다.
public interface class ILogicalThreadAffinative
public interface ILogicalThreadAffinative
[System.Runtime.InteropServices.ComVisible(true)]
public interface ILogicalThreadAffinative
type ILogicalThreadAffinative = interface
[<System.Runtime.InteropServices.ComVisible(true)>]
type ILogicalThreadAffinative = interface
Public Interface ILogicalThreadAffinative
- 특성
예제
다음 코드 예제에서는 합니다 ILogicalThreadAffinative 전송할 인터페이스 Principal 개체 및 Identity 개체 id에 대 한 원격 위치에. 에 대 한 코드를 보려면 합니다 HelloServiceClass
샘플에서 사용 되는 클래스에 대 한 예제를 참조 하십시오는 GetData 메서드. 이 샘플에서 사용 하는 서버 클래스에 대 한 코드를 보려면 예제를 참조 하세요.를 RegisterActivatedServiceType 클래스입니다. 샘플에 사용 되는 클라이언트 클래스에 대 한 코드를 보려면 참조에 대 한 예제는 CallContext 클래스입니다.
[Serializable]
public ref class LogicalCallContextData: public ILogicalThreadAffinative
{
private:
int _nAccesses;
IPrincipal^ _principal;
public:
property String^ numOfAccesses
{
String^ get()
{
return String::Format( "The identity of {0} has been accessed {1} times.", _principal->Identity->Name, _nAccesses );
}
}
property IPrincipal^ Principal
{
IPrincipal^ get()
{
_nAccesses++;
return _principal;
}
}
LogicalCallContextData( IPrincipal^ p )
{
_nAccesses = 0;
_principal = p;
}
};
[Serializable]
public class LogicalCallContextData : ILogicalThreadAffinative
{
int _nAccesses;
IPrincipal _principal;
public string numOfAccesses {
get {
return String.Format("The identity of {0} has been accessed {1} times.",
_principal.Identity.Name,
_nAccesses);
}
}
public IPrincipal Principal {
get {
_nAccesses ++;
return _principal;
}
}
public LogicalCallContextData(IPrincipal p) {
_nAccesses = 0;
_principal = p;
}
}
<Serializable()> Public Class LogicalCallContextData
Implements ILogicalThreadAffinative
Private _nAccesses As Integer
Private _principal As IPrincipal
Public ReadOnly Property numOfAccesses() As String
Get
Return [String].Format("The identity of {0} has been accessed {1} times.", _principal.Identity.Name, _nAccesses)
End Get
End Property
Public ReadOnly Property Principal() As IPrincipal
Get
_nAccesses += 1
Return _principal
End Get
End Property
Public Sub New(p As IPrincipal)
_nAccesses = 0
_principal = p
End Sub
End Class
설명
때 원격 메서드 호출에서 다른 개체에 AppDomain, 현재 CallContext 클래스 생성을 LogicalCallContext 원격 위치에 대 한 호출과 함께 전송 되는 합니다. 개체만 해당 노출 합니다 ILogicalThreadAffinative 인터페이스와 저장 됩니다 합니다 CallContext 전파 됩니다는 AppDomain. 이 인터페이스를 지원 하지 않는 개체에 전송 되지 않은 LogicalCallContext 원격 메서드 호출을 사용 하 여 인스턴스.
적용 대상
.NET