Freigeben über


CallContext.SetHeaders-Methode

Legt die Header fest, die zusammen mit dem Methodenaufruf gesendet werden.

Namespace: System.Runtime.Remoting.Messaging
Assembly: mscorlib (in mscorlib.dll)

Syntax

'Declaration
Public Shared Sub SetHeaders ( _
    headers As Header() _
)
'Usage
Dim headers As Header()

CallContext.SetHeaders(headers)
public static void SetHeaders (
    Header[] headers
)
public:
static void SetHeaders (
    array<Header^>^ headers
)
public static void SetHeaders (
    Header[] headers
)
public static function SetHeaders (
    headers : Header[]
)

Parameter

  • headers
    Ein Header-Array der Header, die zusammen mit dem Methodenaufruf gesendet werden sollen.

Ausnahmen

Ausnahmetyp Bedingung

SecurityException

Der direkte Aufrufer verfügt nicht über die Berechtigung für die Infrastruktur.

Beispiel

Im folgenden Beispielcode wird veranschaulicht, wie einfach ein Header auf dem logischen Thread abgelegt werden kann.

Public Class HelloService
   Inherits MarshalByRefObject

   Public Function HelloMethod(name As String) As String
      Console.WriteLine(("Hello " + name))
      Return "Hello " + name
   End Function 'HelloMethod

   <PermissionSet(SecurityAction.LinkDemand)> _
   Public Function HeaderMethod(name As String, arrHeader() As Header) As String
      Console.WriteLine("HeaderMethod " + name)
      'Header Set with the header array passed
      CallContext.SetHeaders(arrHeader)
      Return "HeaderMethod " + name
   End Function 'HeaderMethod
End Class 'HelloService
public class HelloService : MarshalByRefObject
{
   public string HelloMethod(string name)
   {
      Console.WriteLine("Hello " + name);
      return "Hello " + name;
   }

   [PermissionSet(SecurityAction.LinkDemand)]
   public string HeaderMethod(string name,Header[] arrHeader)
   {
      Console.WriteLine("HeaderMethod " + name);
      //Header Set with the header array passed
      CallContext.SetHeaders(arrHeader);
      return "HeaderMethod " + name;
   }

}
public ref class HelloService: public MarshalByRefObject
{
public:
   String^ HelloMethod( String^ name )
   {
      Console::WriteLine( "Hello {0}", name );
      return "Hello {0}",name;
   }


   [SecurityPermissionAttribute(SecurityAction::Demand, Flags=SecurityPermissionFlag::Infrastructure)]
   String^ HeaderMethod( String^ name, array<Header^>^arrHeader )
   {
      Console::WriteLine( "HeaderMethod {0}", name );
      
      //Header Set with the header array passed
      CallContext::SetHeaders( arrHeader );
      return "HeaderMethod {0}",name;
   }
};

.NET Framework-Sicherheit

Plattformen

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

CallContext-Klasse
CallContext-Member
System.Runtime.Remoting.Messaging-Namespace